【问题标题】:How to tell Python to automatically use the proxy setting in Windows XP like R's internet2 option?如何告诉 Python 自动使用 Windows XP 中的代理设置,如 R 的 internet2 选项?
【发布时间】:2013-06-22 06:27:19
【问题描述】:

我不是超级技术人员。但我知道在 Windows 中,如果我使用 internet2 选项安装 R,那么我可以下载我想要的任何包。

我安装 Python,但每次尝试下载包或安装包(例如使用 easy_install)时都会失败。

如何让 Python 自动检测我的代理设置并安装包?

【问题讨论】:

    标签: python proxy


    【解决方案1】:

    设置环境变量http_proxy/https_proxyhttp://your-proxy-server-address:proxy-port

    urlopen() 函数可以透明地与不支持的代理一起工作 需要身份验证。在 Unix 或 Windows 环境中,设置 http_proxy 或 ftp_proxy 环境变量到一个 URL 在启动 Python 解释器之前标识代理服务器。 例如('%' 是命令提示符):

    % http_proxy="http://www.someproxy.com:3128"
    % export http_proxy
    % python
    ...
    

    no_proxy 环境变量可以用来指定 不应通过代理访问的主机;如果设置,它应该是 主机名后缀的逗号分隔列表,可选择使用 :port 附加,例如 cern.ch,ncsa.uiuc.edu,some.host:8080。

    【讨论】:

    • 我在帖子中确实提到了 Windows XP。不过还是谢谢。
    • @xiaodai,这在我的回答引用中提到的 Windows 中有效。我在 Windows XP 32bit 下测试过。
    • % http_proxy="someproxy.com:3128" % export http_proxy % python 是Windows cmd 提示码吗?电源外壳?我认为这是一些unix命令。此外,我无法在 Windows 中设置环境变量,因为我在公司环境中工作时没有管理权限。
    • @daveL,按以下形式指定代理:http://username:password@someproxy.com:3128
    • 这并没有真正回答这个问题。我想告诉python自动使用windows代理设置是不可能的,但暂时还得自己设置。此外,如果您使用 HTTPConnection 或其他需要将代理指定为参数的东西,此答案也无济于事。
    【解决方案2】:

    或者改用 HTTP_PROXY / HTTPS_PROXY 设置。

    【讨论】:

    • 在某些 LAN 场景中,很难弄清楚这些值应该是什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-20
    • 1970-01-01
    • 2013-06-30
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    • 2010-11-07
    相关资源
    最近更新 更多