我有一个使用 Rails 构建的个人博客。我想在我的网站上添加一个部分,显示我当前的 github 贡献。这样做的最佳方法是什么?
编辑:为了澄清,这就是我想要的:
我只需要天数。
我有一个使用 Rails 构建的个人博客。我想在我的网站上添加一个部分,显示我当前的 github 贡献。这样做的最佳方法是什么?
编辑:为了澄清,这就是我想要的:
我只需要天数。
考虑到GitHub API for Users尚未公开该特定信息(当前贡献流的天数),您可能必须:
刮掉它(通过阅读用户的 GitHub 页面提取它)
正如klamping在他的回答中提到的(赞成),要刮掉的 url 将是:
https://github.com/users/<username>/contributions_calendar_data
https://github.com/users/<username>/contributions
(不过,仅适用于公共回购)
SherlockStd有一个更新的(2017 年 5 月)解析代码如下:
https://github-stats.com/api/user/streak/current/:username
尝试正在使用的项目https://github.com/users/<username>/contributions
(如Marques Johansson的回答中所列,赞成)_calendar_data
git-cal
是一个在命令行上查看提交日历(类似于 GitHub 贡献日历)的简单脚本。
图中的每个块对应于一天,并用 5 种可能的颜色中的一种进行着色,每种颜色代表当天提交的相对数量。
您可以找到各种抓取该信息的示例:
如:
$.getJSON('https://github.com/users/' + location.pathname.replace(/\//g, '') + '/contributions_calendar_data', weekendWork);
喜欢:
leaderboard = members.map do |u|
user_stats = get("https://github.com/users/#{u}/contributions_calendar_data")
total = user_stats.map { |s| s[1] }.reduce(&:+)
[u, total]
end
纯 JSON 数据的 URL是: https ://github.com/users/ [username]/contributions_calendar_data [编辑:看起来这个 URL 不再有效)
有一个生成 SVG 的 URL,其他答案已经表明了这一点。就是在这里: https ://github.com/users/[用户名]/contributions
只需在 URL 中将 [username] 替换为您的 github 用户名,您应该能够看到图表。查看其他答案以获得更深入的解释
如果您想要与 GitHub 图表的视觉外观相匹配的东西,请查看这些项目,这些项目使用https://github.com/users/<username>/contributions_calendar_data
但也应用了基于 Github 逻辑的其他因素。
[项目已弃用且暂时不可用,将很快重新上线。]
由于 URLhttps://github.com/users/<username>/contributions_calendar_data
不再起作用,您必须从https://github.com/users/<username>/contributions
.
不幸的是,Github 喜欢安全性,并且在其服务器上禁用了 CORS。
为了解决这个问题,我为我和所有需要它的人设置了一个 API,只是GET https://github-stats.com/api/user/streak/current/{username}
(允许使用 CORS),你会得到并回答如下:
{
"success":true,
"currentStreak": 3
}
https://github-stats.com将很快实现更多的统计端点:)
请在https://github.com/SherloxFR/github-stats.com/issues请求新的端点,很高兴找到一种方法来实现它们!