SSLError: HTTPSConnectionPool(host='www.tianyancha.com', port=443): Max retries exceeded with url: /search?key=1%E3%81%AEij%E5%93%A6&sessionNo=1689216480.98568432&pageNum=1&base=fj&cacheCode=00350102V2020&estiblishTimeStart=0&estiblishTimeEnd=1 (Caused by SSLError(SSLError(1, '[SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:1129)')))
时间: 2023-07-23 22:06:18 浏览: 282
格式化namenode时报错No Route to Host from node1/192.168.3.101 to hadoop05:8485 failed on socket timeout ex
如果你在禁用SSL验证后仍然遇到SSLError错误,并且错误消息中显示了`[SSL: WRONG_VERSION_NUMBER] wrong version number`,通常意味着尝试使用的TLS版本与服务器不兼容。
你可以尝试使用较低的TLS版本来解决这个问题。以下是一个示例代码:
```python
import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning
import ssl
# 禁用SSL验证警告
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
# 创建SSL上下文并设置最低TLS版本
ssl_context = ssl.create_default_context()
ssl_context.minimum_version = ssl.TLSVersion.TLSv1_2
# 发送请求时使用自定义SSL上下文
response = requests.get(url, verify=False, headers={'Host': 'www.tianyancha.com'}, port=443, ssl_context=ssl_context)
```
通过创建自定义的SSL上下文,并将其最低TLS版本设置为TLSv1.2,你可以尝试解决SSLError错误。请注意,这只是一种解决方案,具体取决于服务器和客户端之间的协议兼容性。
阅读全文