Бюджет: по договоренности
Есть задача написать парсер для сервиса Яндекс.Расписаний, который будет ежедневно анализировать изменения по 2 типам запросов по разным станциям и сохранять информацию в БД + отображать её + отправлять на электронную почту. 

Типы запросов: 
1. По конкретной станции  
rasp.yandex.ru/station/96... – цифры являются изменяемым параметром. Для работы парсера список станций задается в виде цифр. 
Задача парсера: 
- сохранить название станции 
- сохранить название рейса и ссылку на него в Я.Р 
- время отправления 
- дни курсирования 
Если скрипт понимает, что поезд уже есть, данные не заменяются, если нет – сохраняются с указанием даты появления информации в сиситеме (текущие данные). Скрипт должен сравнивать совпадение 3 параметров рейс, время отправления, дни курсирования. Если что-то отличается, то это новая запись. Если остаются такие записи, которых нет, то они переходят в архивные, в сравнении не участвуют. 
2. От станции до Станции 
rasp.yandex.ru/search/tra... 
Цифры после букв s являются кодами станций, которые задаются для работы парсера. 
Задача парсера: 
- сохранить название маршрута 
- сохранить название рейса и ссылку на него в Я.Р 
- время отправления и прибытия 
- дни курсирования 
Условия сохранения аналогичные п.1 

Отображение 
По каждому типу запросов информация отображается списком. Название станции или маршрута, ниже новые рейсы в табличной форме ссылками на ЯР. Можно изменить режим отображения – отобразить все действующие маршруты (добавляется колонка – дата первого сохранения рейса в системе). Отобразить включая архивные (добавляется колонка – дата перехода рейса в архивный). 

Уточнения 
Если рейс перешел в архивный, то с ним уже не нужно сравнивать данные и если он появится через какое-то время вновь с теми же данными, то это будет уже другой рейс. 

Задание списка станций и маршрутов 
Приветствуется любое упрощение (админка не нужна). Как вариант – список станций задается текстовым файлом, коды станций в колонке. Список маршрутов – файлом csv, список кодов станций в csv через точку с запятой. 

Периодичность работы – запускается 1 раз в сутки и сохраняет данные в базе на сервере.
Опубликован 24.12.2014 в 13:40

Выберите способ верификации:

Обновите страницу после прохождения верификации.