GitHub高级搜索指南

旧城冷巷雨未停 提交于 2020-01-20 23:48:25

还在为自学时找不到适合练手的项目而苦恼?

还在好奇别人是如何在GitHub众多项目中找到高质量代码的?

真的是因为他们独具慧眼吗?

,其实他们只是掌握了正确的搜索方法

下面介绍几种常用的GitHub高级搜索方法。相信你看完之后也能很快在GitHub众多项目中找到自己所需的项目。

GitHub项目页介绍

首先先介绍下,一个GitHub项目页的构成。

如上图,其中包含仓库名star数量fork数量描述最后更新时间readme。我们可以根据需求按照上面要素过滤掉不符合自己需求的项目。

例子

举个例子:假设我们要搜索一些高质量的并使用Python开发的爬虫项目。

普通搜索

相信有很多人会采用下面的方式进行搜索。

可以看到,这种方式搜索有以下几个缺点:

  • 海量搜索结果20K+),难以找到自己需要的项目。
  • “年代久远”的项目混入其中,很多年代久远的项目当下并适用当下情况,尤其是爬虫。
  • 项目质量良莠不齐,高质量的项目和质量一般的项目混在一起。
  • 包含多种编程语言

这种情况下我们就需要加入限定条件进行过滤,也就是我们所说的高级搜索

高级搜索

1. 过滤出star数量大于2000的项目

过滤语句:

  • star数量大于2000

    关键字 stars:>2000

  • star数量在1000~2000之间

    关键字 stars:1000..2000

    经过过滤后,可以看到还剩下22个项目,其中包含了

  • 非Python开发的项目
  • 时间久远的项目

    我们继续过滤。

2. 过滤出Python开发的项目

过滤语句:

关键词 language:编程语言

追加到上条过滤语句后,即为:爬虫 stars:>2000 language:Python

过滤效果如下:

符合要求的项目数量还剩14个,其中还包含几个2018年的项目,我们继续过滤。

3. 过滤出最后更新时间2019年10月1日之后的项目

过滤语句:

关键字 pushed:>xxxx-xx-xx

对应的本例的语句就是:

爬虫 stars:>2000 language:Python pushed:>2019-10-01

经过此次过滤后,只剩下9个符合要求的项目。到此,我们就得到了Github中使用Python开发的star数超过2000的最近两个月内仍有更新的爬虫项目。

补充

除了上面提到的过滤语句外,下面几个过滤语句也很常用。

1.过滤出仓库名中包含关键字的项目

in:name 关键字

eg: in:name python

2.过滤出描述中包含关键字的项目

in:decription 关键字

eg:in:decription python

3.过滤出readme中包含关键字的项目

in:readme 关键字

eg:in:readme python

4.过滤出仓库大小在某个范围的项目

  • 大于等于

    size:>=数量 关键字

    eg:size:>=5000 python

  • 之间

    size:最小值..最大值 关键字

    eg:size:20..5000 python

    这里注意下,这个数字代表K, 5000代表着5M

以上即为GitHub常用的高级搜索方法。希望大家通过此方法能在GitHub中找到自己所需的项目。

关注公众号西加加先生一起玩转Python
在这里插入图片描述

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!