Разделы · Парсеры и сбор данных
Пробовал три варианта, ни один не устроил до конца.
Вводные, чтобы не гадать.
Проверял на двух версиях программы, поведение одинаковое. Каталог на 400 тысяч адресов, память на машине 32 гигабайта.
$ ./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 адресов бессмысленно, отказы съедят весь выигрыш.
Тот же вывод, только я шёл к нему дольше.
Не гоняйте один список сразу на всех машинах. Разбейте его заранее, иначе получите дубли и потери на стыках.
Большие каталоги не надо гонять одним куском. Разбейте на части по пятьдесят тысяч, каждую с отдельным состоянием, и падение одной части перестанет ронять весь прогон.
Почти так, но одна деталь меняет вывод.
Скорость упирается в темп, который держит площадка, программа тут ни при чём. Ставить 300 потоков на 20 адресов бессмысленно, отказы съедят весь выигрыш.
Перед сменой поставщика адресов сделайте контрольный прогон на одинаковой задаче. Иначе разницу в скорости будете объяснять чем угодно, кроме настоящей причины.
Забрал себе в заметки.
Набор новых участников сейчас приостановлен. Читать форум можно без учётной записи, все темы открыты.
Когда набор откроют, объявление появится в разделе с короткими вопросами.
Форма работает в браузере и никуда ничего не отправляет.