如何高效地在网上找开源项目?

语言: CN / TW / HK

摄影:产品经理

烤鸭的配菜

学习编程,最高效的还是找个项目,在实际的项目开发中提升自己的编程技能,积累实战经验。如果手边没有项目可做,那就去找开源项目,找开源项目,认准一个网站就够了,那就是 github.com。本文分享如何在 gihtub 上高效的找到自己想要的开源项目。

首先随便打开一个项目,看下一个项目主页包含哪些信息,我已经做了标注:

上图可以看到,一个项目含有的基本信息,这些信息都可以通过搜索框来来匹配,从而更快的找到目标项目。通常星数,观看数,更新日期,表示了一个项目的火热程度。比如说我想搜索 readme 中含有 “web development” 关键字,主要编程语言为 ”Python“,星数大于 3000 的项目,就可以这样搜索:

"web development" in:readme language:python stars:>3000

搜索结果就只有 14 个,大大减轻了自己筛选的负担,结果如下:

下面列举下 GitHub 相关的搜索技巧:

1、通过 in 关键字搜索

关键字 in 可以搜索出 GitHub 上的资源名称 name、说明 description 和 readme 文件中的内容。description 就是 About 那一块的信息。

比如说 python in:name,description,readme 其中,逗号分割表示或的意思,意思就是三者中只要有一个有 python 就行。

2、通过 stars、fork 数量搜索

搜索 GitHub 时用 star 数量和 fork 数量判断这个项目是否优秀的标准之一,我们可以使用 大小,小于,范围等方式过滤:

python in:name stars:>1000 forks:>500 就表示星数大于 1000 且 forks 数大于 500,名字中含有 python 的项目。

如果要指定范围,可以这样:

python in:name stars:5000..10000 表示星数在 5000 到 10000 之间,名字中有 python 的项目。

3、按创建、更新时间搜索

按创建、更新时间搜索可以把版本老旧的资源筛选出去,比如说:

  • 按创建时间: created:>=YYYY-MM-DD

  • 按更新时间: pushed:>=YYYY-MM-DD

比如说搜索 2021 年之后创建的 Python 项目: python in:name created:>=2021-01-01 pushed:>=2021-01-01

4、按文件、路径内容搜索

在 GitHub 还可以按文件内容和文件路径搜索,不过有一定的限制,首先必须登录,此外项目的文件不能太多,文件不能太大,在需要搜索 fork 资源 时,只能搜索到 star 数量比父级资源多的 fork 资源,并需要加上 fork:true 查询,搜索结果最多可显示同一文件的两个分段,但文件内可能有更多结果,不能使用通配符。

语法格式:

  • 按文件内容 关键字 in:file
  • 按文件路径 关键字 in:path

比如: python in:file,path

5、按文件名、大小、扩展名搜索

语法格式如下:

  • 按文件名搜索: 关键字 filename:FILENAME
  • 按文件大小搜索: 关键字 size:>=大小
  • 按扩展名搜索: 关键字 extension:EXTENSION

举个例子: python filename:aaa size:>10 extension:py

6、按编程语言来搜索

语法格式: 关键字 language:LANGUAGE

比如: python language:javascript 表示搜索 javascrip 语言中关于 python 的项目。

未闻 Code·知识星球开放啦!

一对一答疑爬虫相关问题

职业生涯咨询

面试经验分享

每周直播分享

......

未闻 Code·知识星球期待与你相见~

一二线大厂在职员工

十多年码龄的编程老鸟

国内外高校在读学生

中小学刚刚入门的新人

“未闻 Code技术交流群” 等你来!

入群方式:添加微信“mekingname”,备注“粉丝群”(谢绝广告党,非诚勿扰!