在python请求中,curl proxy在哪里是不安全的?

2024-05-28 23:58:45 发布

您现在位置:Python中文网/ 问答频道 /正文

在python中,如何使用requests包通过禁用证书验证的代理发出https请求(类似于curl中的--proxy-insecure键)?我的代码:

import requests
requests.get('https://ip.quotaguard.com', proxies={'https': 'login:password@eu-west-shield-01.quotaguard.com:9294'}, verify=False)

verify=False也被使用,但这与问题无关,因为这是curl中的-k开关的类似物,它在ip.quotaguard.com上禁用验证,而在代理eu-west-shield-01.quotaguard.com:9294上则不禁用验证

代码抛出错误ValueError: check_hostname needs a SSL context with either CERT_OPTIONAL or CERT_REQUIRED

通过curl,请求成功返回结果,以下是请求本身:

curl -x "https://login:password@eu-west-shield-01.quotaguard.com:9294" -L "https://ip.quotaguard.com" --proxy-insecure -k

如果有这种可能性,但不是在requests中,请推荐另一个库


Tags: 代码httpsipcom代理loginpasswordcurl
1条回答
网友
1楼 · 发布于 2024-05-28 23:58:45

弗拉基米尔,我看到你用QuotaGuard来解决这个问题。很抱歉,我没有及时回答你的问题。我们只是在增加我们的支持,所以,再次为延误道歉

对于您的问题,下面链接中的第一句话是适用的:Requests是Python的一个很棒的HTTP库。它允许您根据每个请求指定经过身份验证的代理,以便您可以选择何时通过静态IP路由

https://devcenter.heroku.com/articles/quotaguardshield#https-proxy-python-django

请求库仅使用HTTP代理,而不使用HTTPS代理。因此,在选项中列出HTTPS时,您使用的是HTTPS请求的HTTP代理,而不是HTTP(S)请求的HTTPS代理。因此,在您的情况下,QuotaGuard Static将起作用,而不是QuotaGuard Shield(您的连接字符串看起来像是在屏蔽上)

这可能有助于检查QuotaGard Static和QuotaGard Shield之间的差异,因为它解释了为什么会出现这种情况:

https://www.quotaguard.com/why-is-quotaguard-shield-more-secure-than-quotaguard-static/

我希望这会有所帮助,如果您在安装方面需要更多帮助,请在这里告诉我,或者在Support上与我们联系

相关问题 更多 >

    热门问题