[英]How to capture python https traffic in fiddler?
每當我嘗試執行某些數據獲取任務時,Python 都會出錯。 這只發生在我設置 fiddler 來解密 https 流量時。 我已經嘗試通過 127.0.0.1:8888 路由 python 流量,並且與 mozilla 相同,以便捕獲其流量。 我還安裝了證書並通過 fiddler 信任它,我不確定我哪里出錯了。
raise SSLError(e, request=request)
requests.exceptions.SSLError: HTTPSConnectionPool(host='google.com', port=443):
Max retries exceeded with url: / (Caused by SSLError(SSLError(1, '[SSL: CERTIFIC
ATE_VERIFY_FAILED] certificate verify failed (_ssl.c:748)'),))
以上是我嘗試獲取帶有請求的頁面時遇到的錯誤。
TL;DR requests 庫不使用 Windows 證書存儲,它有自己的一個(根據https://bugs.python.org/issue28547 )。 這意味着默認情況下,您的提琴手 MITM 證書不可用於 python 請求。
您的選擇是
更多細節可以在http://docs.python-requests.org/en/master/user/advanced/#ssl-cert-verification找到
另一方面,請求使用自己的證書包而不是平台提供的證書確實感覺有點奇怪 - 特別是考慮到所有瀏覽器都樂於使用平台的。
正如 polhemic 和 Eric Aronesty 所指出的,出於測試目的,您可以暫時將“CURL_CA_BUNDLE”設置為空字符串。
import os
os.environ['CURL_CA_BUNDLE'] = ''
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.