當我們爬取12306的時候,會彈出乙個視窗,顯示連線不是私密連線,這裡就是ca機構認證,每次訪問的時候都會出現證書頁面錯誤
我們直接寫**
import request
import requests
response = requests.get('')
print(response.status_code)
執行結果爆出了requests.exceptions.sslerror
這就是說我們的驗證證書錯誤了。那我們怎麼解決呢,很簡單,把verify引數設定成false就能解決現在這個錯誤
import requests
response = requests.get('',verify=false)
print(response.status_code)
這樣就能列印出請求成功的狀態碼,(200)
但是下面還會有乙個警告,那麼怎麼解決,這個warning,它建議我們給它指定證書。我們可以忽略這個警告
最終解決方案1
import requests
from requests.packages import urllib3
urllib3.disable_warnings()
response = requests.get('',varify=false)
print(response.status_code)
最終解決方案2
這裡是採用捕獲警告到日誌的方式
import logging
import requests
logging.capturewarings(true)
response = requests.get('',varify=false)
print(response.status_code)
當然,我們也可以直接指定乙個證書用來作為客戶端認證。可以是單個檔案,或者乙個包含2個檔案的元組
import requests
response = requests.get('',cert=('path/server.crt','path/key'))
指定路徑,注意key不能加密 Python爬蟲 忽略ssl認證
當開啟乙個 時,可能會出現網頁不安全,使用者需要點開下面的高階認證再跳轉到該頁面,則需要忽略ssl的操作,才能爬取資料 import requests url headers 因為https是第三方ca證書認證的 但是12306 雖然是https 但是他不是ca證書,他是自己頒布的證書 解決辦法 是...
python遮蔽ssl認證告警
問題 描述 python 呼叫requests庫請求https的介面時,我們配置了verify false,忽略了ssl認證,但是會有alter日誌,列印在終端影響我們觀察測試結果,所以我們要遮蔽告警 解決辦法 呼叫基礎庫中的方法關閉告警資訊 from requests.packages.urlli...
Python爬蟲(四)SSL證書
我們可以發現,現在大部分的 都是以https開頭的。我們知道http是指從www伺服器傳輸超文字到本地瀏覽器的傳輸協議。那https中多出的s又代表著什麼呢?這就是本文要講的ssl。https是以安全為目標的http通道,也就是說在http的基礎加上了ssl層,使資料傳輸更加的安全。ssl ssl證...