當前位置:編程學習大全網 - 源碼下載 - 【日常踐踏】從SSLEOFError到正確配置代理

【日常踐踏】從SSLEOFError到正確配置代理

本文主要參考了Python遇到ProxyError問題的記錄,並對其進行了整理和改寫。

前幾天pip的SSL認證完成後,SSLeError的SSL相關錯誤(8,' EOF發生在暴力協議(_ SSL。c:1129)’)出現在使用請求庫請求HTTPS網站時。

經過壹系列的查詢和測試,發現原因是python自帶的urllib庫沒有正確配置HTTPS代理。

上面提到的HTTP(S)代理,其實就是通過代理服務器轉發HTTP(S)流量的意思,也是上圖中黃線表示的協議,在本文後面會簡稱為導出協議。

其實和代理服務器通信也需要壹個協議,就是上圖中的綠線,本文後面用入口協議來指代。

但是HTTP和Socks4/Socks5是常用的入口協議,很少使用HTTPS作為與代理服務器的連接協議,這也是之前報錯的主要原因。

因此,進口協議和出口協議之間實際上不存在因果關系。以CFW為例。

其入口協議支持設置目錄中的ProxyServer配置代理服務器地址端口以及ProxyEnable是否啟用代理。

當CFW配置代理服務器時,它只給出地址和端口,而不給出入口協議。

根據上面給出的urllib庫的源邏輯,代理將被配置如下

導致pip、requests等上層包在訪問HTTPS網站時會錯誤地使用HTTPS的代理://127.0.0.1: 7890,而CFW根本不支持HTTPS的入口協議,所以才會出現這樣壹系列的錯誤。

個人建議大家可以根據自己常用工具支持的入口協議修改urllib庫的源碼邏輯(文件位置壹般是* */Python3。*/urllib/request.py或* */anaconda 3/lib/URL lib/request . py)。

或者簡單地以下面的方式修改它(不壹定在所有情況下都適用)

  • 上一篇:asp生成靜態html技術
  • 下一篇:微信公眾號互推如何操作
  • copyright 2024編程學習大全網