如何使用pip requirements.txt文件安装python模块附加组件

Mic*_*ang 7 python pip requirements.txt

PIP requirements.txt文件称,演员可以用线等安装

MyPackage==3.0 [PDF]
Run Code Online (Sandbox Code Playgroud)

所以在我的requirements.txt文件中,我有一行内容如下:

requests==2.9.1 [security]
Run Code Online (Sandbox Code Playgroud)

但是,当我运行命令时,不是为请求模块安装安全附加功能:

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

我收到一条错误消息,提示我的文件格式不正确:

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]
Run Code Online (Sandbox Code Playgroud)

有谁知道我可能做错了什么?

Mar*_*c J 21

正确的语法是:

requests[security] == 2.9.1 
Run Code Online (Sandbox Code Playgroud)

链接的文档似乎适用于pipv1.1,而最新的稳定版本是v8.1.pip最新文档在这里,但你必须点击几个链接才能获得要求的格式规范(PEP 0508).