Граббер сайта регистрации продаж (3)
Написать граббер на Perl:
* получение параметров из коммандной строки и .ini файла (если определенный параметр получен из коммандной строки этот параметр из .ini файла игнорируется):
--type(between, min, max, e2e)
--start_date
--end_date
--doc_type(начально в или файле все типы документов с сайта)
--verbose(выдается информация по состоянию выполнения: дата, тип документов, обрабатываемый/запрашиваемый документ, запись документа, есть а базе...)
start_date всегда больше чем end_date
* выполнение поиска:
--between: за каждый день от start_date до end_date (backdated поиск) + по каждому doc_type + фильтр по имени покупателя (посимвольный перебор ASCII). На сайте установлен лимит на кол-во документов в результате поиска. Если результат поиска дает больше лимитированного значения, фильтр по имени покупателя увеличивается пока не будет получено кол-во меньше лимита.
--min: тоже что и between, но start_date получается из базы как минимальная дата.
--max: за каждый день от end_date до start_date + по каждому doc_type + фильтр по имени покупателя (посимвольный перебор ASCII). end_date получается из базы как максимальная дата, start_date = сегодня - 7
-- e2e: тоже что и max, но end_date=сегодня - 28, start_date = сегодня
* грабинг информации (записей) с переходом по страницам результата поиска и граббингом дополнительной информации. Для типов between, min, max дополнительная инфорация запрашивается только если документ не был уже скачан, для типа e2e вся инфорация заменяется новой.
* ведение статистики по среднему времени на одну обработанную запись
Структура таблиц(ы) MySQL обсуждается дополнительно.
Данный проект вплотную переплетается с открытой вакансией (Perl/MySQL/OCR developer) поэтому предпочтение будет отдано исполнителю настроенному на длительное сотрудничество.