解决Python中SSLError(SSLEOFError)导致的协议违规问题

# -*- coding: utf-8 -*-
import requests

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36'}
proxy = {"http": "http://122.230.151.87:35920", "https": "https://122.230.151.87:35920"}

url = 'https://www.qcc.com'
response = requests.get(url, proxies=proxy, headers=headers)
print(response.text)

报错如下:

 requests.exceptions.SSLError: HTTPSConnectionPool(host='www.qcc.com', port=443): Max retries exceeded with url: / (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1131)')))

有两种解决方法:

方法1:

降低urllib3的版本 <= 1.25.11

pip install urllib3==1.25.11

方法2:

https:// > http://

daili

{"http": "http://122.230.151.87:35920", "https": "https://122.230.151.87:35920"}

改为:

{"http": "http://122.230.151.87:35920", "https": "http://122.230.151.87:35920"}

两种方法选一种即可

结果正常返回数据

物联沃分享整理
物联沃-IOTWORD物联网 » 解决Python中SSLError(SSLEOFError)导致的协议违规问题

发表评论