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

还在好奇别人是如何在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

GitHub高级搜索指南的更多相关文章

  1. 使用github高级搜索

    想瞅瞅github上面有哪些中国开发者最活跃,followers最多.可以按照下面的步骤: 打开github的搜索页面 输入 location:china .点search 然后选择不同的排序方式. ...

  2. Github 高级搜索功能

    参考文章链接:https://zhuanlan.zhihu.com/p/55294261 GitHub 提供高级搜索方式. 一.明确搜索仓库标题.仓库描述.README 1.只想查找仓库名称包含XX的 ...

  3. GitHub高级搜索

     GitHub是开发目前最为活跃的开源网站和代码托管地,虽然我们经常使用GitHub,关注各种开源项目,但可能有很多人并不太了解GitHub的搜索功能的使用.GitHub提供了简单搜索和高级搜索,高级 ...

  4. 使用Github的高级搜索功能

    使用Github的高级搜索功能 1. 首先,提供Github高级搜索帮助页面 https://help.github.com/categories/search/ 2. 搜索语法 https://he ...

  5. GitHub的高级搜索功能

    1. 首先,提供Github高级搜索帮助页面https://help.github.com/categories/search/     2. 搜索语法https://help.github.com/ ...

  6. Google高级搜索语法

    Google高级搜索语法   Google搜索果真是一个强悍的不得了的搜索引擎,今天转了一些 google的高级搜索语法 希望能帮助到大家. 一.allinanchor: anchor是一处说明性的文 ...

  7. 如何使用GOOGLE高级搜索技巧

    如何使用GOOGLE高级搜索技巧 一,GOOGLE简介 Google(www.google.com)是一个搜索引擎,由两个斯坦福大学博士生Larry Page与Sergey Brin于1998年9月发 ...

  8. google、baidu高级搜索技巧

    1.baidu(可以去高级搜索查看更多信息) intitle搜索范围限定在网页标题:intitle:和后面的关键词之间不要有空格----intitle:中国 site搜索范围限定在特定站点中:“sit ...

  9. HelloX项目github协同开发指南

    概述 为了提高协同开发效率,HelloX项目已托管到github网站上.根据目前的开发进展,创建了下列几个子项目: HelloX操作系统内核项目:https://github.com/hellox-p ...

随机推荐

  1. H3C RIPv1的缺点

  2. call undefined function openssl_cipher_iv_length

    现象: 访问localhost/blog/public时,报错在verdor/framework/src/Illuminate/Encryption/Encrtpter.php的84行,找不到open ...

  3. .net连接数据库

    /* 连接数据库步骤-- 1.创建连接字符串 data source = ... 计算机名称 initial catalog = ... 数据库名称 integrated security = tru ...

  4. Argus--[优先队列]

    Description A data stream is a real-time, continuous, ordered sequence of items. Some examples inclu ...

  5. H3C DNS简介

  6. Linux 旗标实现

    Linux 内核提供了一个遵守上面语义的旗标实现, 尽管术语有些不同. 为使用旗标, 内核 代码必须包含 <asm/semaphore.h>. 相关的类型是 struct semaphor ...

  7. JAVA JVM记录

    串行处理器: 适用情况:数据量比较小(100M左右):单处理器下并且对响应时间无要求的应用. 缺点:只能用于小型应用 并行处理器: 适用情况:“对吞吐量有高要求”,多CPU.对应用响应时间无要求的中. ...

  8. Linux 内核

    在接口总线领域的最新的一项是外部总线的整个类. 这包括 USB, 固件, 和 IEEE1284(基 于并口的外部总线). 这些接口有些类似于老的非外部的技术, 例如 PCMCIA/CardBus 和 ...

  9. 获取active nn并替换hue.ini

    namenodelists="nnip1,nnip2" nn1=$() nn2=$() nn1state=$(curl "http://$nn1:50070/jmx?qr ...

  10. Dart常见类型转换 Int String Double

    int -> string age.toString() string -> int int.parse('100'); String -> double var onePointO ...