使用pip将Python包从本地文件系统文件夹安装到virtualenv

2024-03-28 14:51:38 发布

您现在位置:Python中文网/ 问答频道 /正文

是否可以使用本地文件系统中的pip安装包?

我已经为我的包运行了python setup.py sdist,它已经创建了适当的tar.gz文件。此文件存储在我的系统中的/srv/pkg/mypackage/mypackage-0.1.0.tar.gz

现在在虚拟环境中,我希望安装来自pypi或特定本地位置/srv/pkg的包。

这可能吗?

PS 我知道我可以指定pip install /srv/pkg/mypackage/mypackage-0.1.0.tar.gz。这是可行的,但我要说的是,如果我输入了pip install mypackage,那么使用/srv/pkg位置作为pip搜索的另一个位置。


Tags: installpip文件pypypi系统setup虚拟环境
3条回答

我正在安装pyfuzzy,但不在PyPI中;它返回消息:No matching distribution found for pyfuzzy

我试过接受的答案

pip install  --no-index --find-links=file:///Users/victor/Downloads/pyfuzzy-0.1.0 pyfuzzy

但它也不工作,并返回以下错误:

Ignoring indexes: https://pypi.python.org/simple Collecting pyfuzzy Could not find a version that satisfies the requirement pyfuzzy (from versions: ) No matching distribution found for pyfuzzy

最后,我找到了一个简单的好方法:https://pip.pypa.io/en/latest/reference/pip_install.html

Install a particular source archive file.
$ pip install ./downloads/SomePackage-1.0.4.tar.gz
$ pip install http://my.package.repo/SomePackage-1.0.4.zip

所以下面的命令对我有效:

pip install ../pyfuzzy-0.1.0.tar.gz.

希望它能帮助你。

怎么办:

pip install --help
...
  -e, --editable <path/url>   Install a project in editable mode (i.e. setuptools
                              "develop mode") from a local project path or a VCS url.

例如,pip install -e /srv/pkg

其中/srv/pkg是可以找到“setup.py”的顶级目录。

我很确定你要找的是--find-links选项。

尽管您可能需要为本地包索引生成一个虚拟的index.html,该索引列出所有包的链接。此工具有助于:

https://github.com/wolever/pip2pi

相关问题 更多 >