标签: requirements.txt

如何在requirements.txt中声明一个直接的github源代码

我已经使用该命令安装了一个库

pip install git+git://github.com/mozilla/elasticutils.git
Run Code Online (Sandbox Code Playgroud)

它直接从Github存储库安装它.这工作正常,我希望在我的requirements.txt.我看其他的票像这样但这并没有解决我的问题.如果我把类似的东西

-f git+git://github.com/mozilla/elasticutils.git
elasticutils==0.7.dev
Run Code Online (Sandbox Code Playgroud)

requirements.txt文件中,pip install -r requirements.txt结果如下:

Downloading/unpacking elasticutils==0.7.dev (from -r requirements.txt (line 20))
  Could not find a version that satisfies the requirement elasticutils==0.7.dev (from -r requirements.txt (line 20)) (from versions: )
No distributions matching the version for elasticutils==0.7.dev (from -r requirements.txt (line 20))
Run Code Online (Sandbox Code Playgroud)

需求文件文档没有提到使用git+git协议说明符的链接,因此可能不支持.

有没有人能解决我的问题?

python pip github requirements.txt

377
推荐指数
9
解决办法
15万
查看次数

在setuptools setup.py文件中引用installation_requires kwarg的requirements.txt

我有一个requirements.txt文件,我正在使用Travis-CI.看来愚蠢复制中都要求requirements.txtsetup.py,所以我希望到一个文件句柄传递给install_requires在kwarg setuptools.setup.

这可能吗?如果是这样,我该怎么做呢?

这是我的requirements.txt档案:

guessit>=0.5.2
tvdb_api>=1.8.2
hachoir-metadata>=1.3.3
hachoir-core>=1.3.3
hachoir-parser>=1.3.4
Run Code Online (Sandbox Code Playgroud)

python pip setuptools requirements.txt

255
推荐指数
13
解决办法
9万
查看次数

找不到满足要求<package>的版本

我正在使用以下requirements.txt文件在Ubuntu 12.04中安装几个Python包:

numpy>=1.8.2,<2.0.0
matplotlib>=1.3.1,<2.0.0
scipy>=0.14.0,<1.0.0
astroML>=0.2,<1.0
scikit-learn>=0.14.1,<1.0.0
rpy2>=2.4.3,<3.0.0
Run Code Online (Sandbox Code Playgroud)

和这两个命令:

$ pip install --download=/tmp -r requirements.txt
$ pip install --user --no-index --find-links=/tmp -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

(第一个下载包,第二个安装它们).

该过程经常因错误而停止:

  Could not find a version that satisfies the requirement <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2)) (from versions: )
No matching distribution found for <package> (from matplotlib<2.0.0,>=1.3.1->-r requirements.txt (line 2))
Run Code Online (Sandbox Code Playgroud)

我手动修复:

pip install --user <package>
Run Code Online (Sandbox Code Playgroud)

然后pip install再次运行第二个命令.

但是,这仅适用于特定的包.当我pip install再次运行第二个命令时,进程停止现在抱怨另一个必需的包,我需要再次重复该过程,即:手动安装新的所需包(使用上面的命令),然后运行第二个pip install命令.

到目前为止,我不得不手动安装six,pytz …

python pip requirements.txt

113
推荐指数
7
解决办法
55万
查看次数

如何为多个环境自定义requirements.txt?

我有两个分支,开发和生产.每个都有依赖关系,其中一些是不同的.开发指向本身正在开发的依赖项.同样适用于生产.我需要部署到Heroku,它希望每个分支的依赖关系都在一个名为'requirements.txt'的文件中.

组织的最佳方式是什么?

我想到的是:

  • 维护单独的需求文件,每个分支一个(必须经常合并!)
  • 告诉Heroku我想要使用哪个需求文件(环境变量?)
  • 编写部署脚本(创建临时分支,修改需求文件,提交,部署,删除临时分支)

python deployment heroku requirements.txt

88
推荐指数
3
解决办法
2万
查看次数

使用pip命令从requirements.txt升级python包

如何使用pip命令从requirements.txt文件升级所有python包?

试过下面的命令

$ pip install --upgrade -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

因为,python包后缀为版本号(Django==1.5.1),它们似乎没有升级.有没有比手动编辑requirements.txt文件更好的方法?

编辑

正如Andy在他的回答包中提到的那样固定到特定版本,因此无法通过pip命令升级包.

但是,我们可以pip-tools使用以下命令实现此目的.

$ pip-review --auto
Run Code Online (Sandbox Code Playgroud)

这将自动从requirements.txt升级所有包(确保pip-tools使用pip install命令安装).

python packages pip requirements.txt

78
推荐指数
10
解决办法
5万
查看次数

requirements.txt vs setup.py

我开始使用Python.我已经添加了requirements.txtsetup.py我的项目.但是,我仍然对这两个文件的目的感到困惑.我读过这setup.py是为可再发行的东西而requirements.txt设计的,它是为不可再发行的东西而设计的.但我不确定这是否准确.

这两个文件真的打算如何使用?

python setup.py requirements.txt

68
推荐指数
4
解决办法
2万
查看次数

有没有办法显示pip包的依赖树?

我有一个具有多个包依赖关系的项目,其中列出了主要要求requirements.txt.当我调用pip freeze它时,将当前安装的软件包打印为普通列表.我更愿意也得到他们的依赖关系,如下所示:

Flask==0.9
    Jinja2==2.7
    Werkzeug==0.8.3

Jinja2==2.7

Werkzeug==0.8.3

Flask-Admin==1.0.6
    Flask==0.9
    Jinja2==2.7
    Werkzeug==0.8.3
Run Code Online (Sandbox Code Playgroud)

目标是检测每个特定包的依赖关系:

Werkzeug==0.8.3
    Flask==0.9
    Flask-Admin==1.0.6
Run Code Online (Sandbox Code Playgroud)

并将这些插入我的当前requirements.txt.例如,对于此输入:

Flask==0.9
Flask-Admin==1.0.6
Werkzeug==0.8.3
Run Code Online (Sandbox Code Playgroud)

我想得到:

Flask==0.9
    Jinja2==2.7
Flask-Admin==1.0.6
Werkzeug==0.8.3
Run Code Online (Sandbox Code Playgroud)

有没有办法显示已安装的pip包的依赖关系?

python pip requirements.txt

67
推荐指数
4
解决办法
2万
查看次数

如何使用requirements.txt在python项目中安装所有依赖项

我是python的新手.最近我得到了一个由python编写的项目,它需要一些安装.我运行下面的命令安装但出错了.

# pip install requirements.txt 
Collecting requirements.txt
  Could not find a version that satisfies the requirement requirements.txt (from versions: )
No matching distribution found for requirements.txt
Run Code Online (Sandbox Code Playgroud)

我在谷歌搜索并找到了这个链接,http://stackoverflow.com/questions/28167987/python-pip-trouble-installing-from-requirements-txt但我不太明白该帖子中的解决方案.

以下是我的requirements.txt文件:

# cat requirements.txt 
ordereddict==1.1
argparse==1.2.1
python-dateutil==2.2
matplotlib==1.3.1
nose==1.3.0
numpy==1.8.0
pymongo==3.3.0
psutil>=2.0
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法来安装这个python项目中所有必需的依赖项?

EDIT1

以下是输出pip3 install -r requirements.txt.

# pip3 install -r requirements.txt 
Requirement already satisfied: ordereddict==1.1 in /usr/local/lib/python3.5/dist-packages (from -r requirements.txt (line 1))
Collecting argparse==1.2.1 (from -r requirements.txt (line 2))
  Using cached argparse-1.2.1.tar.gz
Collecting python-dateutil==2.2 (from -r requirements.txt …
Run Code Online (Sandbox Code Playgroud)

python pip requirements.txt

56
推荐指数
4
解决办法
16万
查看次数

如何为python pip指定安装顺序?

我正在使用fabric(0.9.4)+ pip(0.8.2),我需要为多个服务器安装一些python模块.所有服务器都有旧版本的setuptools(0.6c8),需要升级为pymongo模块.Pymongo需要setuptools> = 0.6c9.

我的问题是pip开始用pymongo而不是setuptools安装,导致pip停止.需求文件中的随机模块顺序似乎没有帮助.

requirements.txt:

setuptools>=0.6c9
pymongo==1.9
simplejson==2.1.3
Run Code Online (Sandbox Code Playgroud)

有没有办法为pip指定安装顺序,因为它似乎没有正确地执行它?

这可以通过两个单独的需求文件来解决,但如果我现在或将来不需要维护多个需求文件,那将会很好.

点数0.8.3仍然存在问题.

python pip virtualenv requirements.txt

54
推荐指数
7
解决办法
2万
查看次数

检查要求是否是最新的

我正在使用pip 需求文件来保存我的依赖项列表.

我还尝试遵循管理依赖项的最佳实践,并在需求文件中提供精确的包版本.例如:

Django==1.5.1
lxml==3.0
Run Code Online (Sandbox Code Playgroud)

问题是:有没有办法告诉Python Package Index中是否有更新的软件包版本可用于内部列出的软件包requirements.txt

对于这个特定的例子,目前最新的版本分别是Django和lxml的1.6.2和3.3.4.

我试过了pip install --upgrade -r requirements.txt,但它说所有都是最新的:

$ pip install --upgrade -r requirements.txt 
Requirement already up-to-date: Django==1.5.1 ...
Run Code Online (Sandbox Code Playgroud)

请注意,此时我不想运行实际升级 - 我只想查看是否有可用的更新.

python pip package pypi requirements.txt

49
推荐指数
4
解决办法
1万
查看次数