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

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

    题目描述 你要进行一个行程为7000KM的旅行,现在沿途有些汽车旅馆,为了安全起见,每天晚上都不开车,住在汽车旅馆,你手里现在已经有一个旅馆列表,用离起点的距离来标识,如下: 0, 990, 1010 ...

  2. P1061 最长连号

    题目描述 输入n个正整数,(1<=n<=10000),要求输出最长的连号的长度.(连号指从小到大连续自然数) 输入格式 第一行,一个数n; 第二行,n个正整数,之间用空格隔开. 输出格式 ...

  3. javaScript通过URL获取参数

    // 函数方法 function GetQueryString(name) { var reg = new RegExp("(^|&)" + name + "=( ...

  4. SpringBoot --web 应用开发之文件上传

    原文出处: oKong 前言 上一章节,我们讲解了利用模版引擎实现前端页面渲染,从而实现动态网页的功能,同时也提出了兼容jsp项目的解决方案.既然开始讲解web开发了,我们就接着继续往web这个方向继 ...

  5. MFC 任务托盘显示气泡

    void CTestDlg::OnClose() { ShowWindow(SW_HIDE); if (!m_bHideNoticeInfo) { ShowBalloonTip(_T(, ); m_b ...

  6. Channel 9视频整理【6】

    GiGi Huang https://channel9.msdn.com/Niners/GiGiHuang

  7. 深入浅出Java并发中的CountDownLatch

      1. CountDownLatch 正如每个Java文档所描述的那样,CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行.在Java并发中 ...

  8. 安装OpenSsh8.1+LibreSSL 3.0.2(ssh升级)

    zlib下载地址: http://www.zlib.net/ LibreSSL下载地址: https://ftp.openbsd.org/pub/OpenBSD/LibreSSL/ OpenSSH下载 ...

  9. python利用subprocess执行交互命令

    已经知道,os.system可以方便的利用python代码执行一些像ping.ipconfig之类的系统命令,但却只能得到命令执行是否成功,不能获得命令成功执行后的结果,像下面这样: >> ...

  10. 【重学Node.js 第1&2篇】本地搭建Node环境并起RESTful Api服务

    本地搭建Node环境并起RESTful Api服务 课程介绍看这里:https://www.cnblogs.com/zhangran/p/11963616.html 项目github地址:https: ...