1. 程式人生 > >介面測試過程中出現報錯SSLError: certificate verify failed 及InsecureRequestWarning處理辦法

介面測試過程中出現報錯SSLError: certificate verify failed 及InsecureRequestWarning處理辦法

指令碼之前寫好的,運行了好多天都是正常的,今天run的時候發現很多用例報錯了,百度半天才得以解決

下面這篇文章給了我很大的幫助:

在使用requests訪問某網站時,提示如下錯誤,Python版本為2.7.13。

SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:661)
  • 1

經過搜尋,urllib或requests在開啟https站點是會驗證證書。 
簡單的處理辦法是在get方法中加入verify引數,並設為false。

requests.get(url, verify=false)
  • 1

問題到此為止還沒結束,取消SSL驗證又帶來一個新問題。出現了警告資訊,這個鍋是urllib3的。

InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. 
  • 1

雖然不是錯誤,但是在捕捉異常時,預設會出問題,為了不影響原有流程,應該去掉這些警告資訊。

from requests.packages.urllib3.exceptions import InsecureRequestWarning
requests.packages.urllib3.disable_warnings(InsecureRequestWarning)
  • 1
  • 2

或者直接取消所有urllib3的警告

import urllib3
urllib3.disable_warnings()
總結來說還是要多解決問題才能讓自己的指令碼更健壯!加油吧!