I'd like to install a certain python package with pip but because of the proxy I am sitting behind pip cannot connect to the internet.
So my question is: Where does pip look for .whl files in order to download them? Can't I just use my browser (which can connect to the internet just fine) to download the .whl file? Installing the package with the downloaded .whl file would be not a problem then.
pip
searches the Python package index (PyPI), each package lists downloads (including wheels, if there are any) with a direct download link on the page. Package pages have the form of https://pypi.python.org/pypi/<package_name>
or https://pypi.python.org/pypi/<package_name>/<version>
for specific versions.
If you can only download wheels manually with your browser, it doesn't matter where you put the wheel file. Just install the wheel file directly:
pip install path/to/wheel.whl
However, pip
supports downloading over a proxy just fine:
pip --proxy username:password@proxy_server:proxy_port install ...
See the --proxy
command line switch documentation. You can add the proxy setting to a pip
configuration file so you don't have to set it on the command line each time, or by setting environment variables; see the Using a Proxy Server section in the Pip User Guide.
How to get an URL pip is using to download the file:
url
propertyE.g.:
import requests
package = requests.get("https://pypi.python.org/pypi/pandas/json").json()
max_ver = max(package["releases"].keys())
# ... check compatibility
file = get_file_idx(package['releases'][max_ver])
urllib.urlretrieve(file["url"])
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With