如何获取未安装PyPI包的元数据(优先输出JSON格式)
如何获取未安装PyPI包的元数据(优先输出JSON格式)
我太懂你的困扰了——pip show确实只能处理已经安装在本地的包,而且默认输出格式也不是JSON,查未安装包的元数据根本派不上用场。别担心,完全不用写PyPI网站的爬虫,有几个简单的命令行方案能轻松搞定,给你挨个说:
用pip自带的
index show命令(推荐)
这是pip官方后来新增的功能,专门用来查询PyPI仓库上的包信息,不管本地装没装都能用,还原生支持JSON输出。
比如要查询django的元数据,直接在终端跑:pip index show --json django输出就是标准的JSON格式,里面包含了版本号、作者、依赖项、项目描述等完整元数据。如果想要更易读的文本格式,去掉
--json参数即可。
要是你的pip版本比较老旧没有这个命令,先升级下pip就好:pip install --upgrade pip。用第三方工具
pip-api
这是一个专门用于获取PyPI包元数据的轻量级工具,安装后用起来很顺手:
首先安装工具:pip install pip-api然后查询包信息,默认输出就是结构化的内容,也支持JSON格式输出:
pip-api show django它还支持通过Python脚本调用,适合需要在代码里处理元数据的场景。
直接调用PyPI官方API(无需额外工具)
如果你不想装任何额外工具,直接用curl或者wget调用PyPI的REST API就行,返回的是最完整的JSON数据:curl https://pypi.org/pypi/django/json这个接口会返回该包所有版本的详细元数据,要是你只关心最新版本的核心信息,可以用
jq工具(需提前安装)过滤结果:curl https://pypi.org/pypi/django/json | jq '.info'
备注:内容来源于stack exchange,提问作者Att Righ
相关产品推荐
相关产品推荐

