Прокси неожиданно не работает - превышено максимальное количество попыток с URL - PullRequest
0 голосов
/ 27 сентября 2019

Я использую Python для загрузки некоторых данных из API.Я также использую прокси-сервер.Я неоднократно проверял это, поскольку я уточняю, как я обрабатываю данные.Все утро все работало нормально.Код, который я использовал для аутентификации прокси-сервера, - это код, который я также использовал в другом скрипте, который получает данные из API, который я запускал снова и снова без проблем.Однако сегодня я вернулся с обеда, запустил тот же код, который не изменил, и получил эту ошибку:

ProxyError: HTTPSConnectionPool (host = XXX, port = 443): максимальное число повторов превышено с url: XXX(Вызывается ProxyError («Невозможно подключиться к прокси-серверу.», Ошибка («Туннельное соединение не удалось: требуется проверка подлинности прокси-сервера 407»,)))

Я также получил это при попытке подключиться к Google, так что это не простосайт.Мой Интернет работает нормально, и я могу выполнить проверку подлинности прокси-сервера из командной строки PowerShell и получить эти же данные.

Я прочитал много других сообщений об этой проблеме и попробовал их предложения, однако все они, похоже,быть о ком-то, кто не мог заставить его работать с самого начала, а не о ком-то, у кого это работало, а потом вдруг перестало работать

Вот оригинальный код аутентификации прокси, который работал уже несколько недель:

proxy = urllib2.ProxyHandler({'http': 'http://XXX/Username:password@proxyurl:proxyport'})
auth = urllib2.HTTPBasicAuthHandler()
opener = urllib2.build_opener(proxy, auth, urllib2.HTTPHandler)
urllib2.install_opener(opener)
url = "https://api.com"
request_headers = { "Content-Type" : "application/json", "authorization" : accessToken, } 'Access token generated elsewhere in code

r = requests.get(url = URL, headers = request_headers)

Что я пробовал:

- Различные способы форматирования проксиURL, имя пользователя и пароль

- добавление verify = false к запросы. Get

- установка proxies = { 'http' : 'Username:Password@proxyip:proxyport' }, а затем добавление прокси = прокси для запросов. Get

--time.sleep, чтобы подождать и повторить попытку (он просто продолжал повторять и повторять попытки навсегда)

- Используя запросы. Сеанс ()

- Чередование http против https: для прокси

- Использование http вместо https для адреса API - это не выдало ошибку, но также не предоставило мне никаких данных и получило ответ 407 (но возвращенный как переменная, а не какошибка), возможно потому, что это неправильный адрес

Странно то, что только когда я пытался исправить эту проблему, я понял, что использовал старый пароль, который я изменил пару недель назад,Как оно могло игнорировать это все утро, я не знаю.Однако исправление пароля во всех тех вещах, которые я пробовал, не имеет значения.Было ли это каким-то образом хранить старые настройки прокси, а затем в какой-то момент он обновился и выгнал меня, и теперь я не могу вернуться?Снова мой интернет работает нормально, и я могу войти на прокси-сервер через PowerShell.

Любая помощь будет принята с благодарностью, спасибо.

...