Разделы · Парсеры и сбор данных
Собираю данные регулярно, софт привычный, и вот на чём споткнулся.
Список на 120 тысяч адресов, окно на прогон шесть часов. Проверял на двух версиях программы, поведение одинаковое.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Ткните носом, если очевидное пропустил.
Если считаете расход заранее, смотрите сразу на безлимит по трафику. У меня приватные серверные прокси, два терабайта в месяц уходят незаметно и в счёт не попадают.
Разбирались втроём, нашли случайно.
Большие каталоги не надо гонять одним куском. Разбейте на части по пятьдесят тысяч, каждую с отдельным состоянием, и падение одной части перестанет ронять весь прогон.
Состояние прогона держите отдельно от результата. Тогда падение процесса стоит вам минуты вместо всей ночи.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Сначала делал так же, потом переделал всё.
Скорость упирается в темп, который держит площадка, программа тут ни при чём. Ставить 300 потоков на 20 адресов бессмысленно, отказы съедят весь выигрыш.
Сайты с обязательным входом требуют аккуратного хранения сессии и своевременного обновления. Хитрости тут лишние.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Пробовали снизить темп вдвое?
До этого работало? Что менялось перед тем, как сломалось?
Проходил ровно этот путь года полтора назад.
Разметку разбирайте по устойчивым признакам. Классы оформления для этого не годятся. Классы меняют при каждом обновлении, смысловые атрибуты живут дольше.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Проверял на четырёх проектах, вывод один.
Состояние прогона держите отдельно от результата. Тогда падение процесса стоит вам минуты вместо всей ночи.
Проверял на четырёх проектах, вывод один.
Состояние прогона держите отдельно от результата. Тогда падение процесса стоит вам минуты вместо всей ночи.
$ ./sbor --potokov 120 --spisok chast-01.txt --proksi pool.txt обработано: 48 210 / 50 000 пустых ответов: 1 842
Отпишитесь, что получилось.
Было такое прошлой осенью, разбор занял вечер.
Если программа ест память, дело почти всегда в накоплении результата. Настройте запись на диск пачками, и потолок исчезнет.
Ловил это дважды, оба раза по разным причинам.
Большие каталоги не надо гонять одним куском. Разбейте на части по пятьдесят тысяч, каждую с отдельным состоянием, и падение одной части перестанет ронять весь прогон.
Перед большим прогоном всегда гоняю пробу на тысяче адресов. Три минуты времени, и сразу видно, где посыплется.
Ставьте паузу с разбросом, не ровную.
Какой объём и за какое окно?
Сколько адресов и из скольких подсетей?
Дополню, потому что важная деталь потерялась.
Разметку разбирайте по устойчивым признакам. Классы оформления для этого не годятся. Классы меняют при каждом обновлении, смысловые атрибуты живут дольше.
Сначала логи, потом версии.
Проверяйте из той же программы. Браузер показывает своё.
Набор новых участников сейчас приостановлен. Читать форум можно без учётной записи, все темы открыты.
Когда набор откроют, объявление появится в разделе с короткими вопросами.
Форма работает в браузере и никуда ничего не отправляет.