piprequirements.txt文档说可以使用类似
的行来安装附加功能MyPackage==3.0 [PDF]
因此,在我的requirements.txt 文件中,我有一行内容如下:
requests==2.9.1 [security]
但是当我运行命令时,没有为请求模块安装安全附加功能:
pip install -r requirements.txt
我收到一条错误消息,提示我的文件格式不正确:
Invalid requirement: 'requests==2.9.1 [security]'
Traceback (most recent call last):
File "/Library/Python/2.7/site-packages/pip/req/req_install.py", line 77, in __init__
req = pkg_resources.Requirement.parse(req)
File "/Library/Python/2.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 3036, in parse
req, = parse_requirements(s)
File "/Library/Python/2.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2980, in parse_requirements
"version spec")
File "/Library/Python/2.7/site-packages/pip/_vendor/pkg_resources/__init__.py", line 2956, in scan_list
raise RequirementParseError(msg, line, "at", line[p:])
RequirementParseError: Expected ',' or end-of-list in requests==2.9.1 [security] at [security]
有人知道我可能做错了什么吗?
正确的语法是:
requests[security] == 2.9.1
链接的文档似乎适用于
pip
v1.1,而最新的稳定版本是 v8.1。 pip 的最新文档在这里,但是您必须单击更多链接才能访问要求的格式规范(PEP 0508)。
更新并稍微扩展的答案:
我需要定义一个requirements.txt依赖项
结果如下:
odin-data[meta_writer] @ git+https://github.com/odin-detector/odin-data@fastcs-dev#subdirectory=python
我认为这是最新的参考:https://pip.pypa.io/en/stable/reference/requirements-file-format