python3发送https请求_关于python 3.x:如何在不引起python3的SSL证书错误的情况下将POST请求发送到https...
事情是這樣的,我一直在嘗試從python內(nèi)部將POST請求發(fā)送到LOGIN到我的大學(xué)wifi頁面,但是卻收到SSL證書錯誤。 POST請求在chrome的POSTMAN擴展中可以正常工作。
這是我使用chrome'e調(diào)試器查看POST請求時的請求外觀
Request URL:https://112.133.253.2:8090/login.xml
Request Method:POST
Status Code:200 OK
Remote Address:112.133.253.2:8090
Referrer Policy:no-referrer-when-downgrade
POST /login.xml HTTP/1.1
Host: 112.133.253.2:8090
Connection: keep-alive
Content-Length: 72
Origin: https://112.133.253.2:8090
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.75 Safari/537.36
Content-Type: application/x-www-form-urlencoded
Accept: */*
Referer: https://112.133.253.2:8090/httpclient.html
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
我發(fā)現(xiàn)問題出在發(fā)帖請求url中應(yīng)指定'http',應(yīng)該是https。
但是,當(dāng)我使用https時,我得到了python的SSL證書錯誤。
我嘗試給verify=False參數(shù)沒有運氣。 我也嘗試過給證書這樣的路徑:-
resp = S.post("https://112.133.253.2:8090/login.xml" ,
data = data ?,
verify ="/etc/ssl/certs/ca-certificates.crt") ;
但是沒有任何效果。
郵遞員的擴展如何工作而不給出SSL證書錯誤? 如何解決此問題以從Python本身發(fā)送請求?
這解決了我的問題
它可以幫助我解決問題。 參考此鏈接
嘗試禁用如下警告:
from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
希望能幫助到你。
這不是修復(fù)
的確,這并不能消除潛在的問題,我認為這是使用自簽名證書(?)造成的,并且無法知道Postman是否在幕后產(chǎn)生相同的警告。 OP已準(zhǔn)備好禁用驗證,但是據(jù)報告,這仍然會導(dǎo)致生成相同的警告,而上面的警告并沒有。 有關(guān)更完整的答案,請參閱此相關(guān)問題。
《新程序員》:云原生和全面數(shù)字化實踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀總結(jié)
以上是生活随笔為你收集整理的python3发送https请求_关于python 3.x:如何在不引起python3的SSL证书错误的情况下将POST请求发送到https...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python特征选择relieff图像特
- 下一篇: 没有form的表单验证_PHP动态生成表