【发布时间】:2018-12-18 12:36:18
【问题描述】:
是的,我对这个问题很认真。使用 pip 进行搜索是如何工作的?
关键字search 的文档指的是https://pip.pypa.io/en/stable/user_guide/#searching-for-packages 上的“pip 搜索参考”,它只是参考。
我无法从搜索尝试中得出结论,搜索是如何工作的。例如。如果我搜索“exec”,我会得到各种结果,例如 exec-pypeline (0.4.2) - an incredible python package。只要描述中包含术语“exec”,我什至会得到与“exec”无关的包名称的结果。
但奇怪的是,我没有在列表中看到我自己的包之一,尽管其中一个包的名称中包含 exec。仅凭这一点,我们就可以得出结论,pip(至少)会在包描述(我的包没有)中搜索完整的搜索词。
但是基于这个假设,如果我搜索包描述中提供的其他术语,我也没有列出我的包。这也适用于其他软件包:例如如果我搜索“项目”,我在结果集中没有得到flask-macros,尽管“项目”一词明显存在于flask-macros 的描述中。因此,这与上述假设相矛盾,这显然不是搜索的工作方式。
有趣的是,我可以搜索“macro”并得到“flask-macros”,但如果我搜索“macr”,则找不到“flask-macros”。
那么 pip 究竟是如何进行搜索的呢?在哪里可以找到合适的参考资料?
【问题讨论】:
-
与此相关的一个(可能更多)方面:我刚刚发现该网页列出了术语“日志记录”的至少 9300 个条目。有趣的是
pip只返回了大约 100 个。难道pip只是忽略了搜索提供的大部分包? -
不是你的问题,但qypi 看起来是
pip search的合理替代方案:一种真正的查询语言、json 输出、编写良好的文档。