这个命令给出了一组选项以及一个 参数。query 是一个用于搜索的字符串,可以匹配包名及描述。
注意:你可以使用 pip help 检索其它支持的命令的信息。
假设你的应用需要访问一个使用 OAuth2 授权的服务。理想情况下,会有一个库使用 requests 执行或者其它类似的接口实现。用 pip 到 PyPI 上搜索一下:
search 命令选项生成了一个相当大的包集合。其中一些看起来像 django-oauth 这样指定了一个服务或技术。希望找到一个像是 requests-oauth 的信息。很不幸,除了简短的描述,并没有其它信息。
多数情况下,你希望直接在 PyPI 的网站搜索包。PyPI 为其索引提供了搜索功能,并通过包中公开的元数据(如框架,主题,开发状态等)过滤搜索结果。
PyPI 中用同一个术语搜索可能会产生大量的结果,不过你可以对它们进行分类过滤。比如,如果你想要找到可以帮助你开发应用的库,你可以展开 Intended Audience 并选择 Developers。另外,你可能还需要一个稳定且可用于生产的包,可以展开 Development Status 并选择 Production/Stable。
你可以应用其他过滤器以及调整搜索词,直到找到你想要的包。
搜索结果提供了一个包页面的链接,包含了更多的信息以及想要的文档。下面我们看看 requests-oauth2 的信息:
这个项目页面提供了更多的信息,而且看起来还有一个指向 Home 页的链接。该链接指向 Github 上的项目仓库。你可以看到项目相关的更多信息以及一些使用示例。
看到初始源代码仓库,像是找到了无价的财富。在那里,你可以通过查看最新的提交日志,PR(pull request)次数以及打开的 issues 等问题来找到一些项目的状态和提示。
另外还有一个查找包的方式,Google。被广泛使用的 Python 库会展示在 google 搜索的顶部,并且你应该能看到指向 PyPI 中包或者源代码仓库的链接。
找到一个合适包需要花费一些时间研究,但是只要找到了,就可以为你的开发过程提速。
卸载包
有时候你不得不卸载一个软件包。要么是你找到了一个更好的包来替代它,要么是确实不需要某些功能了。卸载软件包会有一些棘手。
注意这里,当你安装了 requests,pip 同时也安装了其他的依赖。你安装的包越多,多个包拥有相同的依赖的可能性越大。这里 pip 的 show 命令就派上用场了。
卸载包之前,先确保你已经对这个包运行了 show 命令: