我有一个使用rails构建的个人博客。我想在我的网站上添加一个部分,显示我目前的github贡献。这样做的最佳方式是什么?
编辑:为了澄清,这就是我想要的:
只需要天数就可以了。
答案 0 :(得分:37)
考虑到GitHub API for Users尚未公开该特定信息(当前捐款流的天数),您可能需要:
刮掉它(通过阅读用户的GitHub页面提取它)
正如klamping中提到的his answer(upvoted),废弃的网址将是:
<删除> https://github.com/users/<username>/contributions_calendar_data
德尔>
的 https://github.com/users/<username>/contributions
强>
(仅限公共回购)
SherlockStd下方有updated (May 2017) parsing code:
https://github-stats.com/api/user/streak/current/:username
尝试使用https://github.com/users/<username>/contributions
的项目(如Marques Johansson的answer中所列,已投票)_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
答案 1 :(得分:17)
普通JSON数据的网址: https://github.com/users/[username]/contributions_calendar_data [编辑:看起来此网址不再有效]
有一个生成SVG的URL,其他答案已经指出。那是在这里: https://github.com/users/[username]/contributions
只需用URL中的github用户名替换[username],您就可以看到图表了。请参阅其他答案以获得更深入的解释
答案 2 :(得分:2)
如果你想要一些与GitHub图表的视觉外观相匹配的东西,请查看这些使用https://github.com/users/<username>/contributions_calendar_data
的项目,同时根据Github的逻辑应用其他因素。
答案 3 :(得分:2)
[项目暂时弃用且不可用,很快将重新上线。]
由于网址https://github.com/users/<username>/contributions_calendar_data
不再有效,您必须从https://github.com/users/<username>/contributions
解析SVG。
不幸的是,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询问新的终点,很高兴找到实施它们的方法!