Python包依赖关系树

我想分析Python包的依赖树。我如何获得这些数据?

我已经知道的事情

  1. setup.py有时包含一个requires列出软件包依赖关系的字段
  2. PyPi是Python软件包的在线存储库
  3. PyPi有一个API

我不知道的事情

  1. PyPi上很少有项目(大约10%)在该requires字段中明确列出依赖项,但pip/easy_install仍设法下载正确的软件包。我想念什么?例如,对于统计计算的通俗图书馆,pandas,不会列出requires,但仍设法安装numpypytz等....有没有一种更好的方式自动收集依赖性的完整列表?
  2. 某个地方有一个预先存在的数据库吗?我要重复现有的工作吗?
  3. 是否存在与其他具有分发系统(R,Clojure等)的语言类似的,易于访问的数据库?

回答:

您应该 改为

查看install_requires字段,请参阅“新建和更改的关键字”。

__setup

requires被认为过于模糊,无法依赖于依赖项安装。此外,还有setup_requirestest_requires字段setup.py用于运行测试所需的依赖项。

当然,依赖图已经被分析过了。来自Olivier

Girardot的博客文章中的图片非常生动:

PyPI依赖项

该图像链接到图形的交互式版本。

以上是 Python包依赖关系树 的全部内容, 来源链接: utcz.com/qa/407586.html

回到顶部