一、概述
我們?cè)谟胮ython的 requests模塊請(qǐng)求http時(shí)可以成功,但在請(qǐng)求 https 時(shí),會(huì)報(bào)如下錯(cuò)誤:
二、失敗分析
https是也是http的一種協(xié)議,只是傳輸會(huì)加密比http更安全,https = http+SSL/TLS。
1、上述的錯(cuò)誤大概意思是代理錯(cuò)誤引起的,我們?cè)L問的是https,但代理只配置了http。
2、網(wǎng)上搜的解決辦法是添加https的代理,我加了還是返回代理錯(cuò)誤。
3、python、包的版本導(dǎo)致的問題。
三、解決過程
我的環(huán)境版本:
Python 3.8.1
urllib3 1.26.14
requests 2.27.1
1、urlib3降級(jí)到1.25.11
pip install urllib3==1.25.11 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com
2、關(guān)閉SSL開關(guān)
再次訪問https請(qǐng)求,返回安全套接字錯(cuò)誤:
使用 verify 關(guān)閉SSL,verify默認(rèn)開啟。
r = requests.get(url=url,verify=False).content
3、關(guān)閉不安全請(qǐng)求告警
再次訪問https,返回不安全請(qǐng)求告警:
導(dǎo)入logging模塊,不捕獲警告,
在代碼中加入:文章來源:http://www.zghlxwxcb.cn/news/detail-649537.html
logging.captureWarnings(True)
再次訪問https,成功!文章來源地址http://www.zghlxwxcb.cn/news/detail-649537.html
到了這里,關(guān)于python3請(qǐng)求https的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!