mmn*_*yle 5 python packages pip package-management pypi
我需要类似以下内容:
pip showrequirements tensorflow
Run Code Online (Sandbox Code Playgroud)
这将返回一些允许我解析所需软件包名称和所需版本的内容:
astor>0.6, tensorboard>1.0.11, etc.
Run Code Online (Sandbox Code Playgroud)
pip 在安装和下载命令期间以某种形式获取此信息。我可以在代码中看到它发生的地方……但是在我破解使用 pip 内部代码的方法之前,是否有任何简单的 API 或现有库可以做到这一点?
编辑:我无法安装软件包来查看此内容,因此 pip show 将不起作用。一种(hacky)解决方案是解析 pip 下载的输出。
谢谢!
小智 11
pip show <package_name>
Run Code Online (Sandbox Code Playgroud)
将在“需要”部分列出依赖项。请参阅文档。
编辑:
pip show仅适用于已安装的软件包。对于已卸载的软件包,PyPI 有一个JSON API。
例如:
import json
import requests
package_name = 'tensorflow'
url = 'https://pypi.python.org/pypi/' + str(package_name) + '/json'
data = requests.get(url).json()
print(data['info']['requires_dist'])
Run Code Online (Sandbox Code Playgroud)