python的requests,開啟v2rayN后,無法使用python的requests庫報錯:
Traceback (most recent call last):
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\connection.py", line 174, in _new_conn
? ? conn = connection.create_connection(
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\util\connection.py", line 95, in create_connection
? ? raise err
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\util\connection.py", line 85, in create_connection
? ? sock.connect(sa)
TimeoutError: [WinError 10060] 由于連接方在一段時間后沒有正確答復(fù)或連接的主機沒有反應(yīng),連接嘗試失敗。During handling of the above exception, another exception occurred:
Traceback (most recent call last):
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\connectionpool.py", line 703, in urlopen
? ? httplib_response = self._make_request(
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\connectionpool.py", line 386, in _make_request
? ? self._validate_conn(conn)
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\connectionpool.py", line 1042, in _validate_conn
? ? conn.connect()
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\connection.py", line 358, in connect
? ? self.sock = conn = self._new_conn()
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\connection.py", line 186, in _new_conn
? ? raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x0000019EDD55E5B0>: Failed to establish a new connection: [WinError 10060] 由于連接方在一段時間后沒有正確答復(fù)或連接的主機沒有反應(yīng),連接嘗試失敗。During handling of the above exception, another exception occurred:
Traceback (most recent call last):
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\requests\adapters.py", line 489, in send
? ? resp = conn.urlopen(
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\connectionpool.py", line 787, in urlopen
? ? retries = retries.increment(
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\urllib3\util\retry.py", line 592, in increment
? ? raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='www.google.com', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x0000019EDD55E5B0>: Failed to establish a new connection: [WinError 10060] 由于連接方在一段時間后沒有正確答復(fù)或連接的主機沒有反應(yīng),連接嘗試失敗。'))During handling of the above exception, another exception occurred:
Traceback (most recent call last):
? File "E:\Dpandata\Myproject\Sjj1024\src\tasks\test_waiwang.py", line 14, in <module>
? ? response = requests.request("GET", url, headers=headers, data=payload)
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\requests\api.py", line 59, in request
? ? return session.request(method=method, url=url, **kwargs)
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\requests\sessions.py", line 587, in request
? ? resp = self.send(prep, **send_kwargs)
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\requests\sessions.py", line 701, in send
? ? r = adapter.send(request, **kwargs)
? File "E:\Dpandata\Myproject\Sjj1024\venv\lib\site-packages\requests\adapters.py", line 565, in send
? ? raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='www.google.com', port=443): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x0000019EDD55E5B0>: Failed to establish a new connection: [WinError 10060] 由于連接方在一段時間后沒有正確答復(fù)或連接的主機沒有反應(yīng),連接嘗試失敗。'))
解決辦法引用:開啟代理時無法使用python的requests庫 · Issue #2065 · 2dust/v2rayN · GitHub
有能力的也可以自己查看解決辦法?
我這里總結(jié)一下解決辦法
如果你的請求不想走v2ray的設(shè)置:
設(shè)置 -> 參數(shù)設(shè)置 -> 系統(tǒng)代理設(shè)置 -> 下拉選中:socks={ip}:{socks_port}
然后再發(fā)送請求:可以看到請求成功發(fā)送了?
如果你的請求想走v2ray則設(shè)置為:
http=http://{ip}:{http_port};https=http://{ip}:{http_port}
?
或者在python代碼里添加proxy配置
先設(shè)置 -> 參數(shù)設(shè)置 -> 系統(tǒng)代理設(shè)置 -> 下拉選中:socks={ip}:{socks_port},然后允許來自局域網(wǎng)的連接:
?然后設(shè)置proxies = {'https': '127.0.0.1:10809'},注意端口,如果你的配置上本地監(jiān)聽端口為10808,則python的proxies里面要端口+1:
import requests
url = "https://www.google.com/"
payload = {}
headers = {
'Upgrade-Insecure-Requests': '1',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/109.0.0.0 Safari/537.36',
'sec-ch-ua': '"Not_A Brand";v="99", "Google Chrome";v="109", "Chromium";v="109"',
'sec-ch-ua-mobile': '?0',
'sec-ch-ua-platform': '"macOS"'
}
proxies = {'https': '127.0.0.1:10809'}
response = requests.request("GET", url, headers=headers, data=payload, proxies=proxies)
發(fā)送請求之后,就可以了:文章來源:http://www.zghlxwxcb.cn/news/detail-669456.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-669456.html
到了這里,關(guān)于requests.exceptions.SSLError: HTTPSConnectionPool(host=‘.*.‘, port=443): 開啟代理時無法使用python的requests庫的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!