Python запрашивает ошибку модуля при интеграции с Proxy Ips - PullRequest
0 голосов
/ 24 сентября 2018

Есть код, который выбирает данные из Openstreet Nominatim Api.URL-адреса являются динамическими, то есть широта и долгота динамически передаются из базы данных один за другим, и данные также выбираются один за другим. Однако, если это занимает много времени, попытался сделать его многопроцессным, и пример приведен ниже:

liste = [https://nominatim.openstreetmap.org/reverse.php?format=json&lat="+lat+"&lon="+lng+"&zoom=16&accept-language=en;q=0.8,.. ,..,..]

def get_url(url):
    Operations
    .
    .
    r = request.get(url)
    value =  r.json()

pool = Pool(processes=8)

results = pool.map(get_url,liste)

Однако сайт openstreet блокирует меня, поскольку существует ограничение на 1 запрос в секунду, поэтому я попытался использовать функцию прокси в запросах:

proxies = [ip:port,ip:port,ip:port,ip:port...]

liste = [https://nominatim.openstreetmap.org/reverse.php?format=json&lat="+lat+"&lon="+lng+"&zoom=16&accept-language=en;q=0.8,.. ,..,..]

def get_url(url):
    ma_list = ['http://'+x for x in proxies]
    proxyDict = {"http" : ma_list}
    headers = ''
    r = requests.get(url,headers=headers, proxies=proxyDict)
    value =  r.json()
    r = request.get(url)
    value =  r.json()

pool = Pool(processes=8)

results = pool.map(get_url,liste)

Так что я пытаюсь сделатьЕсли список из 10 прокси-серверов существует, динамические URL-адреса обрабатываются разными ips каждый раз, даже если в секунду выполняется 4 запроса, они выполняются с различными прокси-серверами (в основном циклически перебирается список прокси).

но я всегда получаю сообщение об ошибке:

[MaX retries exceeded with url:]

Я что-то не так делаю или это невозможно?

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