Earlier in the course, we installed the cowsay package. Unless otherwise specified, pip installs packages from the main index, PyPI.
In most cases, PyPI is the source we need. But there are cases where the package is in an alternative index, for example, an internal corporate one. Sometimes, developers upload packages to GitHub instead of publishing them in any index.
Pip knows how to work with alternative indexes and repositories containing the source code of packages. In this lesson, we'll look at both variations.
Alternative package indexes
If you call the pip install
command with the --index-url <url>
option, pip will look for the package and all its dependencies in the index at the specified URL address. Let's try to install a package from the training index Test PyPI:
Note that the URL address of the index can be in the form of something-something'/'simple
— it is how we should name indexes according to the convention.
Test PyPI contains most of the packages in the main PyPI, but usually, local index holders don't want to keep copies of all versions of all packages.