有没有办法在不先安装给定 python 包的情况下获取依赖项列表?
我目前可以获得要求列表,但它需要安装软件包。例如,我可以使用 pip 显示基本需求信息,但它不包括版本信息:
$ pip show pytest
Name: pytest
Version: 3.0.6
...
Requires: colorama, setuptools, py
我尝试了一个名为的库pipdeptree
,其中包含更好的需求输出,但它也需要安装包
$ pipdeptree -p pytest
pytest==3.0.6
- colorama [required: Any, installed: 0.3.7]
- py [required: >=1.4.29, installed: 1.4.32]
- setuptools [required: Any, installed: 34.0.0]
- appdirs [required: >=1.4.0, installed: 1.4.0]
...
理想情况下,我会得到所pipdeptree
提供的详细程度。此外,能够requirements.txt
从 pythonwheel
或 pypi生成文件pip
也足够了。
我对给定包的依赖约束感兴趣,而不是在解决依赖要求后最终下载的包。例如,我真的不在乎下载的 pip package-2.3.4
,我宁愿知道这package>=2.1
是一个要求。