如何使用pip从本地目录根据requirements.txt文件安装包?

28 浏览
0 Comments

如何使用pip从本地目录根据requirements.txt文件安装包?

问题如下:

我有一个名为requirements.txt的文件,内容如下:

BeautifulSoup==3.2.0
Django==1.3
Fabric==1.2.0
Jinja2==2.5.5
PyYAML==3.09
Pygments==1.4
SQLAlchemy==0.7.1
South==0.7.3
amqplib==0.6.1
anyjson==0.3
...

我有一个本地归档目录,其中包含所有的包和其他文件。

我创建了一个新的virtualenv,具有以下特点:

bin/virtualenv testing

在激活虚拟环境后,我尝试从本地归档目录根据requirements.txt安装这些包。

source bin/activate
pip install -r /path/to/requirements.txt -f file:///path/to/archive/

输出了一些内容,表明安装过程似乎很顺利:

Downloading/unpacking Fabric==1.2.0 (from -r ../testing/requirements.txt (line 3))
  Running setup.py egg_info for package Fabric
    warning: no previously-included files matching '*' found under directory 'docs/_build'
    warning: no files found matching 'fabfile.py'
Downloading/unpacking South==0.7.3 (from -r ../testing/requirements.txt (line 8))
  Running setup.py egg_info for package South
....

但稍后检查发现,没有任何包被正确安装。我无法导入这些包,并且在我的虚拟环境的site-packages目录中找不到任何包。那么出了什么问题呢?

admin 更改状态以发布 2023年5月20日
0
0 Comments

这对我有效:

$ pip install -r requirements.txt --no-index --find-links file:///tmp/packages

--no-index - 忽略包索引(仅查看--find-links URL)。

-f, --find-links - 如果是URL或HTML文件的路径,则解析存档的链接。

如果是本地路径或file:// URL,是一个目录,则查找目录中的归档。

0
0 Comments

这对每个人都有效:

pip install -r /path/to/requirements.txt

说明:

-r, --requirement < filename >

从给定的requirements文件中安装。此选项可多次使用。

0