Как добавить случайные задержки между запросами, отправленными в Google, чтобы избежать блокировки в python

Я написал программу, которая отправляет более 15 запросов в Google на каждой итерации, общая итерация составляет около 50. Для тестирования я должен запускать эту программу несколько раз. Однако, делая это, несколько раз Google блокирует меня. есть ли какие-либо способы, чтобы я мог обмануть Google, возможно, добавив задержки между каждой итерацией? Также я слышал, что Google действительно может узнать временные метки. поэтому мне нужно, чтобы эти задержки были случайными, поэтому Google не может найти от нее ответ, чтобы узнать мое поведение. также он должен быть коротким, поэтому весь процесс не займет много времени. Кто-нибудь знает что-то или может предоставить мне кусок кода в python? Благодаря

Ответы

Ответ 1

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

Это сказало:

from random import randint
from time import sleep

sleep(randint(10,100))

будет сбрасываться случайное число секунд (от 10 до 100).

Ответ 2

Поскольку вы не проверяете скорость Google, выясните, каким образом ее можно моделировать, когда вы проводите тестирование (как @bstpierre предложил в своем комментарии). Это должно решить вашу проблему и умножить время ответа на переменные одновременно.

Ответ 3

Также вы можете попробовать использовать несколько прокси-серверов для предотвращения запрета по IP-адресу. urllib поддерживают прокси по специальному параметру конструктора, httplib также может использовать прокси