How to get pip to work behind a proxy server
本问题已经有最佳答案,请猛点这里访问。
我正在尝试使用python软件包管理器pip安装软件包,并且它是来自互联网的依赖项。 但是,我在大学里的代理服务器后面,并且已经设置了
1 | pip install TwitterApi |
我在日志文件中收到此错误:
1 2 3 4 5 | Getting page http://pypi.python.org/simple/TwitterApi Could not fetch URL http://pypi.python.org/simple/TwitterApi: <urlopen error [Errno 111] Connection refused> Will skip URL http://pypi.python.org/simple/TwitterApi when looking for download links for TwitterApi Getting page http://pypi.python.org/simple/ Could not fetch URL http://pypi.python.org/simple/: <urlopen error [Errno 111] Connection refused> |
我什至尝试像这样显式设置代理变量:
1 | pip install --proxy http://user:password@proxyserver:port TwitterApi |
但是我仍然遇到同样的错误。 我如何获得在代理服务器后面工作的点子。
根据
您应该使用以下内容:
1 | pip install --proxy http://user:password@proxyserver:port TwitterApi |
另外,应注意
请注意,在早期版本中(无法跟踪代码中的更改,抱歉,但是文档已在此处更新),您必须将
至少对于pip 1.3.1,它使用http_proxy和https_proxy环境变量。确保同时定义两者,因为它将使用https访问PYPI索引。
1 2 | export https_proxy="http://<proxy.server>:<port>" pip install TwitterApi |
我知道是旧线程,但为了将来参考,现在将--proxy选项传递为" ="
例:
1 | $ sudo pip install --proxy=http://yourproxy:yourport package_name |
首先尝试使用以下命令设置代理
1 | SET HTTPS_PROXY=http://proxy.***.com:PORT# |
然后尝试使用命令
1 | pip install ModuleName |
在Ubuntu上,您可以使用以下命令设置代理
1 2 | export http_proxy=http://username:password@proxy:port export https_proxy=http://username:password@proxy:port |
或者如果您使用SOCKS错误
1 | export all_proxy=http://username:password@proxy:port |
然后跑点子
1 | sudo -E pip3 install {packageName} |
至少pip3也可以在不使用" ="的情况下使用,但是,可能需要" https"而不是" http"
最终命令,对我有用:
1 | sudo pip3 install --proxy https://{proxy}:{port} {BINARY} |