Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

多个维度来做用户排名 #2

Open
xchaoinfo opened this issue May 12, 2019 · 7 comments
Open

多个维度来做用户排名 #2

xchaoinfo opened this issue May 12, 2019 · 7 comments

Comments

@xchaoinfo
Copy link

目前的用户排名,仅仅是根据 follower 来的,建议增加更多维度,例如用户所有项目的 star 之和。

@jaywcjlove
Copy link
Owner

@xchaoinfo 这个比较麻烦,所有项目的 star 倒是可以获取,但是 API 限制,好像每个小时只能请求 30 次,500 个用户,有时候一天都获取不完。

还没有找到好的解决方法,预计爬页面,不用API可能会解决这种问题。

有些用户项目在组织里面,但是组织里面很难判断这个项目属于用户。

不知道有什么好的解决方案

@88250
Copy link

88250 commented Jul 28, 2019

要拿到用户的组织仓库数据需要用户自己的授权 token,所以在全球榜单这个场景下不大现实....

如果用户授权 token 的话可以根据贡献量来衡量是否是该仓库的主要贡献者。我这边有一个这样思路的实现,纳入了用户在组织仓库中的 star 之和,欢迎前来围观: https://hacpai.com/top/github/user/star

@jaywcjlove 有 5W 多的 stars 位居榜首 👍

@jaywcjlove
Copy link
Owner

@88250 好厉害,排名第 25

image

我不知道你这个是如何获取 start 总和的排行的。

@88250
Copy link

88250 commented Jul 28, 2019

@jaywcjlove 使用用户授权的 token 可以获取到用户所有参与的 repos(包括组织下的),然后就可以累加了。如果是组织仓库的话,还需要判断用户是否是这个参考的主要贡献者,如果是的话就把 stars 计入。

btw 我的 fo 主要是靠产品获取的,这需要用户授权较高权限的 token。

image

@jaywcjlove
Copy link
Owner

@88250 哦,那我这个没有办法玩儿了。

@88250
Copy link

88250 commented Jul 28, 2019

@jaywcjlove 如果是动态应用的话可以考虑让用户授权参与,这样可以获得更多的数据以支持各种榜单,我想会有用户愿意授权的 :)

@jaywcjlove
Copy link
Owner

@88250 动态的排行榜,都 倒闭 了。😆

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants