How to install python package with a different name using PIP

When installing a new python package with PIP, can I change the package name because there is another package with the same name?

Or, how can I change the existing package's name?


It's not possible to change "import path" (installed name) by specifying arguments to pip. All other options require some form of "changes to the package":

A. Use pip install -e git+http://some_url#egg=some-name: that way even if both packages have the same import path, they will be saved under different directories (using some-name provided after #egg=). After this you can go to the source directories of packages (usually venv/src/some-name) and rename some folders to change import paths

B-C. Fork the repository, make changes, then install the package from that repository. Or you can publish your package on PyPI using different name and install it by name

D. use pip download to put one of the packages in your project, then rename folders as you like


I think one way of going about this can be using

pip download

See the docs here. You can change the name of the package after it has been downloaded and then go about manually installing it. I haven't tested this but seems like it should work.


Create a new virtualenv and then install the package on new virtualenv, with this you can have the different version of packages as well.


If you are struggling to install the correct package when using pip install 'module', you could always download its corresponding wheel file (.whl extension) and then install this directly using pip. This has worked for me in various situations in the past.


Use virtualenv if you don't need both package for the same project. With virtualenv you can have different version of packages as well.

Another way maybe the site-packages as mentioned already.

https://virtualenv.pypa.io/en/stable/

http://docs.python-guide.org/en/latest/dev/virtualenvs/#lower-level-virtualenv