Как мне избежать блокировки со стороны Google из-за запросов к поисковой системе через запросы? Я перебираю список дат, чтобы получить результаты для запроса типа Microsoft Release
для каждого месяца в списке.
В настоящее время я изменяю пользовательские агенты и добавляю time.sleep
из 10s
между запросами, но меня всегда блокируют. Как я могу использовать прокси в сочетании с моим подходом? Есть лучший способ сделать это?
from bs4 import BeautifulSoup
import requests
http_proxy = "http://10.10.1.10:3128"
https_proxy = "https://10.10.1.11:1080"
ftp_proxy = "ftp://10.10.1.10:3128"
proxyDict = {
"http" : http_proxy,
"https" : https_proxy,
"ftp" : ftp_proxy
}
page_response = requests.get('https://www.google.com/search?q=Microsoft+Release&rlz=1C1GCEA_enGB779&tbs=cdr:1,cd_min:'+startDate+',cd_max:'+endDate+'&source=inms&tbm=nws&num=150',\
timeout=60, verify=False, headers={'User-Agent': random.choice(user_agents)}, proxies=proxyDict)
soup = BeautifulSoup(page_response.content, 'html.parser')
Я тогда получаю следующую ошибку:
ConnectTimeout: HTTPSConnectionPool(host='www.google.com', port=443): Max retries exceeded with url: /search?q=Microsoft+Release&rlz=1C1GCEA_enGB779&tbs=cdr:1,cd_min:'+startDate+',cd_max:'+endDate+'&source=inms&tbm=nws&num=150 (Caused by ConnectTimeoutError(<urllib3.connection.VerifiedHTTPSConnection object at 0x1811499358>, 'Connection to 10.10.1.11 timed out. (connect timeout=60)'))
Есть идеи, как противостоять этой ошибке и заставить ее работать?