gpt4 book ai didi

python - 使用 PySocks 和 Socks5 代理时如何禁用 SSL 证书验证?

转载 作者:太空宇宙 更新时间:2023-11-03 14:50:17 32 4
gpt4 key购买 nike

这似乎让我很接近: SOCKS5 proxy using urllib2 and PySocks但似乎如果我尝试添加上下文以禁用 SSL 验证,它就会忽略它。我不是最擅长 python 的,但看起来 PySocks 中类的继承与 HTTPShadler 一样。 https://github.com/Anorov/PySocks/blob/master/sockshandler.py如果是这样,我想我可以在没有问题的情况下传递 context=context 。但它不起作用。这是我的方法...

def make_http_call(url, socks_hostname=None, socks_port=None, socks_username=None, socks_password=None, params=None):
"""
Make a HTTP GET request to given url.
"""
import ssl
url = add_url_params(url, params)
opener = urllib2.build_opener()
context = ssl._create_unverified_context
if socks_hostname and socks_port and socks_username and socks_password:
# Use proxy instead if params are provided
print "Socks Proxy is being used..."
opener = urllib2.build_opener(
SocksiPyHandler(socks.PROXY_TYPE_SOCKS5, socks_hostname, socks_port, True, socks_username, socks_password, context=context))
else:
print "Socks Proxy not in use..."
request = urllib2.Request(url)
response = opener.open(request).read()
return response

这可能吗?

最佳答案

对于上下文变量我会这样做(未经测试的代码):

context = ssl.create_default_context()
context.verify_mode = CERT_NONE
context.check_hostname = False

最后一行不是必需的,因为我们不检查证书,但以防万一。现在我不推荐这样做,因为这不能确保你与你认为的人交流,我不建议使用任何低于 3 的 python 版本,因为众所周知它们有很大的安全问题,See Here .

关于python - 使用 PySocks 和 Socks5 代理时如何禁用 SSL 证书验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34947808/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com