модифікована rss-подача
Я досить лінива людина, яка при цьому не любить робити рутинну роботу. Активного наповнення rss подачі новинок аніме на нашому сайті в мене вистачило десь на півроку. Після цього бували затримки на тиждень-два, і це не було добре. Треба було якось автоматизовувати цю річ і я мав наступну ідую.
Ідея полягала в тому, що з певною періодичністю рекурсивно робиться обхід каталогу з аніме, і наприклад, за допомогою “find -mtime +..”, потім все це обгортається в item і дописується в кінець файлу. В цьому варіанті було багато маленьких підводних каменів: слідкувати щоб guid були різні; правильно прописувати значення length і type в тегу enclosure. Проте я не програміст, і все залишалось лише ідеєю.
На щастя, graywolf`ові надоїла несинхронізованість появи файлу та запису в rss, і він запропонував допомогу в автоматизації стоворення rss-файлу. Ним було написано скрипт на Perl`і, який робить обхід по певному каталогу і формує xml файл, в якому кожен файл, з цього каталогу, описується окремим item`ом, а в якості guid назначається ім”я файлу. З приємного, в perl`і вже доступні модулі для роботи з xml та rss та отриманні інформації про MIME type, думаю це йому явно полегшело роботу, а мені цікаво було дізнатись, що таке є.
Я поставив цей скрипт в crontab, і кожну годину формуєтся новий xml файл. Так як сайт можна зайти лише з UA-IX, прийшлось додати в crontab upload цього файлу на цей сайт. Тому з сьогодні по тій же самій адресі доступна модифікована rss-подача. Питання та пропозиції в студію. Особлива подяка graywolf`у :)
P.S> може хтось підкаже, коли якийсь rss агрегатор ініціює запит на нові item`ми, він повністю закачує xml файл і вже в себе аналізує по guid новий це item чи ні?
minus-one:
геніально! — давно треба було зробити, на то ж воно і рсс…
думаю, що повністю закачують (не уявляю собі, як інакше)… хоча є треті кеш-сайти (типу http://www.rsscache.com) через які можна пустити свою подачу, тоді вона рідер буде отримувати тільки нові статті (трафік витрачатиме кеш-сайт).
17 February 2008, 10:53 pmgraywolf:
Та нема за що ;) Це робилось в першу чергу, щоб мну якомога швидше дізнавався про появу нових серій “Ookami to Koushinryou”, бо в мене ломка :)))
Якщо потрібні будуть якісь модифікації скрипта, то кажи - при наявності часу та можливостей буду намагатись реалізувати побажання.
17 February 2008, 11:30 pmFinve:
graywolf: не знаю, може я і не відкрию для тебе істини, але в myanimelist.net є можливість виставляти фансаб групу. І якщо виставити там “Notification Settings” у відповідну позицію, то на мейл ти будеш отримувати листи, коли будуть виходи нові серії даного аніме від даної фансаб групи :)
Це все звісно, якщо не малось на увазі, що ти чекав ці серії саме на цьому сервері.
18 February 2008, 12:10 amgraywolf:
Саме другий варіант і мався на увазі :) Вихід нової серії (зі скріншотами) я зазвичай бачу по РСС від Random Curiosity.
18 February 2008, 12:37 am