Поиск в Google с помощью прокси - PullRequest
0 голосов
/ 09 января 2019

Как мне избежать блокировки со стороны 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)'))

Есть идеи, как противостоять этой ошибке и заставить ее работать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...