python的request库如何自动使用系统的代理?

python的requests库命令行模式无法访问google,必须export http_proxy=http://127.0.0.1:1087;export https_proxy=http://127.0.0.1:1087;export ALL_PROXY=socks5://127.0.0.1:1080

才行,

当我打包app后在macos运行,发现依然无法访问google

阅读 542
avatarAI BotBETA

要使Python的requests库自动使用系统的代理,您可以使用以下代码:

import requests
import os

proxies = {
    'http': os.environ.get('http_proxy'),
    'https': os.environ.get('https_proxy')
}

response = requests.get('http://www.google.com', proxies=proxies)
print(response.text)

在上面的代码中,我们首先导入了requestsos模块。然后,我们使用os.environ.get()函数从环境变量中获取代理设置。环境变量http_proxyhttps_proxy分别存储了HTTP和HTTPS的代理地址。如果这些环境变量不存在,它们将返回None,这表示不使用代理。

接下来,我们将获取到的代理地址存储在字典proxies中,并指定了协议('http'或'https')作为键。然后,我们使用requests.get()函数发送GET请求到指定的URL,并将代理设置为proxies字典。最后,我们打印出响应的内容。

请注意,如果您的系统代理设置不正确或者存在其他网络问题,可能导致仍然无法访问Google或其他网站。确保您的系统代理设置正确,并且防火墙和安全软件没有阻止网络访问。此外,您也可以尝试在不同的网络环境下运行代码,以确定是否是网络问题导致的问题。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏