使用pip进行代理设置

44

我曾经试图在我的工作场所搭建Python开发环境来创建一些基本应用程序。例如,我键入pip install numpy,但似乎无法使pip正常工作,我收到以下错误消息:

  Retrying (Retry(total=3, connect=None, read=None, redirect=None)) after connection broken by 'ConnectTimeoutError(<pip
._vendor.requests.packages.urllib3.connection.VerifiedHTTPSConnection object at 0x035884B0>, 'Connection to pypi.python.
org timed out. (connect timeout=15)')': /simple/numpy/

我所做的研究似乎表明代理意识是我的问题,如果是这样的话,我不太确定这到底意味着什么或该如何解决。

11个回答

68
如果您知道代理信息,可以将其传递到命令行:
pip install --proxy=user:pass@server:port numpy

一个完整的字符串可以是简单的:

pip install --proxy=http://proxy.example.com numpy

其中proxy.example.com是您(公司)的代理服务器。仅当代理服务器还需要该信息时,您才需要传递user:passport


3
或者,如果已经设置了环境变量export http_proxy=http://proxy.example.com,则可以使用命令pip install --proxy=$http_proxy numpy安装numpy。 - prayagupa
当我尝试从命令提示符执行“pip install”时,我遇到了相同的错误。有人能详细解释一下为什么我会遇到这个错误吗?我从上面的帖子中了解到这是与代理相关的问题,但由于我是编程世界的初学者,所以不确定它是什么。 - santhosha
1
不错 +1。有没有办法将其放入配置文件中,这样我就不必每次都输入了?编辑:没关系,找到了:https://dev59.com/QFcQ5IYBdhLWcg3wA_LH#43473312 - craq
我使用了以下命令:pip install --proxy= h t t p://proxy-europe.network.fx.com pandas - user3376020
一个非常棘手的问题 - 确保代理的URL值以 http: 开头而不是 https:。否则,您会收到类似于 WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProxyError('Cannot connect to proxy.', timeout('_ssl.c:1059: The handshake operation timed out'))' 的警告,并且您的软件包安装最终将失败。 - snark

16

如果你使用代理服务器安装软件包,pip可能无法正常工作。 要解决这个问题:转到控制面板->Internet选项->连接->局域网设置->取消勾选“使用代理服务器”选项。 然后尝试使用pip,它应该可以工作了。 在安装软件包之后,你可以开始使用代理服务器。


3
不确定为什么有人踩了这个。非常感谢The_Vats,他很快地解决了我的问题! - FlyingZebra1
3
嗯...我在家里,没有选择“使用代理服务器...”,但仍然无法使用pip。 - A. Vieira
4
@FlyingZebra1可能会被点踩,因为该用户没有权限取消使用代理服务器,如果不使用代理服务器,(他/她)将无法连接到互联网。这是一个典型的情况,当员工试图在组织防火墙后访问互联网时。 - Seshadri R

7

这个也可以工作。

pip --proxy http://user:pass@server:port install libraryName

对我来说,pip在使用--proxy=user:pass@server:port时出现了问题,解决方法是使用--proxy http://user:pass@server:port - An Other

5
为了暂时解决这个问题,我断开了我的安全VPN,然后就能够继续下载了。所以,是的,这绝对是代理问题。

谢谢,兄弟。我浪费了一天的时间来寻找代理... - Louis 'LYRO' Dupont

4

对我而言有效的方法是禁用我正在使用的 VPN,之后尝试运行命令,这样命令就能正常工作了。

    pip install pandas

1
只需尝试以下内容。
pip install --proxy=user:pass@server:port <package Name>

例如
pip install --proxy=http://10.10.10.150/accelerated_pac_base.pac quandl 

1

前往环境变量,并添加2个新变量:http_proxyhttps_proxy到您的代理地址。这对我有用。


0

我想安装pygame。我使用我的个人互联网连接。但是我收到了一个错误。

Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x0000023C1F52C400>, 'Connection to 10.50.225.222 timed out. (connect timeout=15)')': /simple/pygame/

为了避免这种情况,请前往环境变量。从环境变量中的用户变量中删除 http_proxyhttps_proxy。 然后我就可以下载 pip(也就是 pygame)了。

0
我在虚拟机中遇到了这个错误信息,并尝试了这里所有的建议来解决看起来像代理错误的问题。最后发现虚拟机内的时间设置不正确。

0
  1. 按下 Win+R 打开运行窗口,输入 regedit 并点击确定。

  2. 进入 HKEY_CURRENT_USER/Software/Microsoft/Windows/Current Version/Internet Settings

  3. 找到名为 ProxyServer 的文件并删除它。

  4. 打开 PowerShell。

  5. 执行命令 pip install flask


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接