Нужно написать развитый парсер/граббер RSS на Perl.

На входе парсера будет таблица RSSta с таким набором полей:

1. id

2. r_ver

Версия RSS (0.91, 0.92,1.0,2.0) или Atom. RDF версию также надо уметь грабить.

3. r_fulltext

0 – сайт не отдает полную версию контента в RSS

1 – сайт отдает полную версию контента в RSS

4. r_url

URL RSS канала

5. r_rubrik

Рубрика канала. Будет указываться мной при заполнении таблицы.

Также в таблице могут быть другие поля, не значимые для вашей работы, поэтому надо делать выборку из базы в виде SELECT id, r_ver, …., а не SELECT * ….

Что должен делать скрипт.

1. Скрипт будет запускаться каждый день моим кроном по 4-5 раз в день.

2. Он делает выборку всех RSS каналов из таблицы RSSta (описана выше)

3. Если r_fulltext==1, то скрипт просто выдерает весь контент из фиды и укладывает в таблицу content_[id – из таблицы RSSta]. Набор полей в таблице content_xxx будет примитивный: id, дата, контент и длина контента без пробелов и тегов.

4. Если r_fulltext==0, из фиды выдераем адрес контента, заходим по ссылке, находим весь контент и точно также сохраняем его в таблицу content_[id].

Что ОБЯЗАТЕЛЬНО должен уметь скрипт:

1. Работать со всеми версиями RSS и Atom фид

2. Вести лог своей работы.

3. Если в контенте будут встречаться картинки, то пути к ним надо заменять на абсолютные.

4. Работать быстро!

Все фиды, которые будут находится в базу будут проверены фид валидатором, так что непредсказуемых ситуаций возникнуть не должно. Также вы должны учесть, что фидов в таблице RSS будет порядка 10 000, притом что 9 000 из них НЕ БУДУТ отдавать полный контент в фиду, поэтому суммарные нагрузки на скрипт могут доходить до 100 000 страниц в сутки. Поэтому приветствуется использование неблокирующих сокетов, многопоточность и событийные машины (особенно POE).

Если в работе будут использованы какие-то нестандартные модули, то обязательна ссылка на CPAN.

Просьба людей без опыта и без знания RSS не беспокоить. Предоплату могу сделать в минимальном размере и то только людям с хорошей репутацией.

Сроки разработки не критичны.

Если будут вопросы, то готов обсудить по асе: 237620497.

В своих предложениях сразу указывайте срок и цену.

17 лет назад
parse
40 лет
17 лет в сервисе
Был
4 года назад

Заявки фрилансеров

Нет заявок фрилансеров