@andrey13879

Как исправить ошибку при использовании прокси в requests?

Использую такой код:
proxies = {
   'https': 'http://185.221.160.176:80'
}
response = requests.get('https://www.selenium.dev/selenium/web/mouse_interaction.html',proxies=proxies)

вылетает ошибка:
requests.exceptions.ProxyError: HTTPSConnectionPool(host='www.selenium.dev', port=443): Max retries exceeded with url: /selenium/web/mouse_interaction.html (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 400 Bad Request')))

прокси тестировал через несколько проксичекеров, но все они показали, прокси рабочий. Помогите, пожалуйста, заранее спасибо!
  • Вопрос задан
  • 477 просмотров
Решения вопроса 2
dimonchik2013
@dimonchik2013
non progredi est regredi
прокси тестировал через несколько проксичекеров, но все они показали, прокси рабочий.

это несерьезно, в браузер вставь и посмотри какой он рабочий

он рабочий, но вот с httpS - не рабочий
для httpS нужны socks прокси

(ну или метод CONNECT но он нечастно встречается, 30% на массе проверок и хз как работает)
Ответ написан
Комментировать
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
У вас тип прокси указан https, а протокол в url прокси - http.
Сделайте оба http и ошибка исчезает.
import requests
proxies = {
   'http': 'http://185.221.160.176:80'
}
url = 'https://www.selenium.dev/selenium/web/mouse_interaction.html'
response = requests.get(
    url=url, 
    proxies=proxies)
print(response)

Правда, соединение будет по http, но я не уверен, что этот proxy вообще умеет проксировать https.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы