Интересует как работает следующий пример (Парсим гугл с использованием ломалки recaptcha2) 1. Имеем список проксей 100 штук, прокси обновляются каждые 30 секунд. 2. Берем проксю А из списка, и с помощью её качаем гугловский урл. 3. Определяем что нужно взломать рекапчу2, отсылаем данные на xevil. 4. проходит 2 минуты, за это время успевает обновится список проксей и прокси A больше нет в списке. 5. Запрашиваем ответ от xevil - рекапча2 успешно взломана. 6. теперь с помощью прокси А мы должны отправить данные на гугловский урл. НО прокси А больше нет в нашем списке. Вопрос: Запрос в п.6. все таки пойдет с помощью прокси А?
Слишком много стало 403 & 503 ошибок в п.6 прям пачками идут, xevil рисует что всё корректно гадает. Может гугл что-то поменял и вот тут нужно, что-то еще передавать...? POST(1): https://ipv4.google.com/sorry/index - 503 Service Unavailable (2.42 KB)
Да, разгаданная рекаптча будет отправлена в Гугл с того IP, на котором она была получена. Если эта прокси умерла или с ней повторно выдалась рекаптча, то будет сделана новая попытка с новой сессией (или с новой прокси, если сессии отключены или нет доступной сессии). Кстати, сессии тоже подразумевают хранение и повторное использование прокси, с которым запрос был успешен. 403 - это бан IP без выдачи каптчи. 503 - это в большинстве случаев рекаптча (очень редко бан без каптчи), если прокси сильно заюзанные, то рекаптча может выдаваться повторно, даже если первая была разгадана правильно. Если у вас очень много подобных ошибок, то может быть стоит сменить прокси. Кроме этого, сейчас в парсерах Гугла используется специальный адаптивный алгоритм, который в начале парсинга (на первых нескольких сотнях или даже тысячах запросов) пробует разные варианты работы и выбирает наиболее оптимальный для дальнейшей работы. Поэтому вначале вполне может наблюдаться повышенное кол-во ошибок.
у меня прокси свои и от носка, разницы не заметил при парсинге с гаданием, без гадания - в лоб носок рулит конечно. адаптивный алгоритм только для парсинга без гадания? У меня для варианта без гадания создаются задачи с пачками запросов по 6000, т.е через api отсылаются такие задания, это мало, какие пачки лучше слать? адаптивный алгоритм запоминает эффективные настройки свои между заданиями? или для каждого задания он по новой начинает поиск оптимальных настроек?
Еще мысль такая, что если сделать дополнительные попытки - запостить ответ рекапчи в тех ситуация, когда прокся не стабильная? т.е нужно отдельное кол-во попыток и отдельный timeout для поста. POST(1): https://ipv4.google.com/sorry/index - 596 HTTPS(C) proxy error: Read error (0 KB) Тут же проверяю - всё ок, прокся нормальная, обидно рекапча гадалась почти 4 минуты
Начиная с 1.2.198 при получении 403 ответа в SE::Google::Modern прокси будет баниться. Нет, он как раз направлен на уменьшение кол-ва получаемых рекаптч и банов, включение/отключение разгадывания не влияет. Запоминает вместе с успешными сессиями. Сколько лучше запросов отправлять - зависит от проксей и от "настроения" Гугла. В целом - можете парсить как обычно, не отвлекаясь на подобные моменты Ответ рекаптчи должен отправляться с того же IP, на котором он был получен.
я имел ввиду делать несколько попыток с этого же ip, т.к гадание рекапчи2 по ресурсам слишком дорого, то наверно есть смысл несколько раз туже проксю подолбить надеясь на положительный результат.