This question already has an answer here:
- Using pip behind a proxy 26 answers
I am trying to use python package manager pip to install a package and it's dependencies from the internet. However I am behind a proxy in my college and have already set the http_proxy
environment variable. But when I try to install a package like this:
pip install TwitterApi
I get this error in the log file:
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>
I even tried setting my proxy variable explicitly like this:
pip install --proxy http://user:password@proxyserver:port TwitterApi
But I still get the same error. How do I get pip to work behind a proxy server.
The pip's proxy parameter is, according to
pip --help
, in the formscheme://[user:passwd@]proxy.server:port
You should use the following:
Also, the
HTTP_PROXY
env var should be respected.Note that in earlier versions (couldn't track down the change in the code, sorry, but the doc was updated here), you had to leave the
scheme://
part out for it to work, i.e.pip install --proxy user:password@proxyserver:port
at least pip3 also works without "=", however, instead of "http" you might need "https"
Final command, which worked for me:
Old thread, I know, but for future reference, the --proxy option is now passed with an "="
Example:
If you are using Windows, you can try to configure the proxy in Internet Explorer -> Options -> Connections -> LAN settings -> Proxy Server. It will affect the system globally.
On Ubuntu, you can set proxy by using
or if you are having SOCKS error use
Then run pip
At least for pip 1.3.1, it honors the http_proxy and https_proxy environment variables. Make sure you define both, as it will access the PYPI index using https.