Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用ipv6 https代理连接到网站_Python_Proxy_Ipv6 - Fatal编程技术网

Python 如何使用ipv6 https代理连接到网站

Python 如何使用ipv6 https代理连接到网站,python,proxy,ipv6,Python,Proxy,Ipv6,与使用ipv4代理连接到网站不同,我希望使用ipv6 https代理进行连接。我搜索了谷歌的答案,但没有找到任何(我理解的)。。。我发现最接近的是。。。(不使用ipv6代理,而是使用我自己的ipv6)。我愿意使用请求之外的东西来完成这项工作,但是,请求是首选的。稍后我将尝试线程 import requests import socket from unittest.mock import patch orig_getaddrinfo = socket.getaddrinfo def geta

与使用ipv4代理连接到网站不同,我希望使用ipv6 https代理进行连接。我搜索了谷歌的答案,但没有找到任何(我理解的)。。。我发现最接近的是。。。(不使用ipv6代理,而是使用我自己的ipv6)。我愿意使用请求之外的东西来完成这项工作,但是,请求是首选的。稍后我将尝试线程

import requests
import socket
from unittest.mock import patch


orig_getaddrinfo = socket.getaddrinfo
def getaddrinfoIPv6(host, port, family=0, type=0, proto=0, flags=0):
    return orig_getaddrinfo(host=host, port=port, family=socket.AF_INET6, type=type, proto=proto, flags=flags)

with patch('socket.getaddrinfo', side_effect=getaddrinfoIPv6):
    r = requests.get('http://icanhazip.com')
    print(r.text)
如果上述代码不起作用

import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning


requests.packages.urllib3.disable_warnings(InsecureRequestWarning)


proxy = {"http":"http://username:password@[2604:0180:2:3b5:9ebc:64e9:166c:d9f9]", "https":"https://username:password@[2604:0180:2:3b5:9ebc:64e9:166c:d9f9]"}

url = "https://icanhazip.com"

r = requests.get(url, proxies=proxy, verify=False)

print(r.content)
这是我的ipv6 https代理的当前提供程序,但是,他们对其客户端使用的是ipv4上的ipv6,因此这就是为什么此代码有效,而上述代码无效(如果使用相同的提供程序)。如果您使用的提供程序本身支持ipv6,则顶部的代码应该适用于您。

您可以使用 示例curl命令:

import requests

proxy = {"http": "http://userame:password@168.235.109.30:18117", "https":"https://userame:password@168.235.109.30:18117"}

url = "https://icanhazip.com"

r = requests.get(url, proxies=proxy)

print(r.content)
您将看到示例结果:

curl -m 90 -x http://proxyUsername:proxyPassword@93.104.200.99:20000 http://api6.ipify.org
2a13:c206:2021:1522:9c5a:3ed5:156b:c1d0