我想确认 events 的 GitHub API 仅提供最新的 300 个事件,还是我可以获得整个事件列表?
经过一番搜索,我找到了另一个问题的答案:如何获取我去年贡献过的所有 GitHub 项目的列表?
该应用程序托管在 opensourcecontributo.rs。只需输入您的 GitHub 用户名,然后您将有两个选项卡可供使用,允许您列出“所有”您贡献的存储库和“所有”您的事件。源代码可在 GitHub 上获取:tenex/opensourcecontributors。 我想这个应用程序执行了我在对您的问题的评论中建议的操作:对于最近的数据,它可能只使用 API,对于较旧的数据,它可能使用时间线来枚举存储库,然后使用 API 来检查这些存储库。我一定要看看这段代码。
我的理解是,GitHub 的 API 并不限制您最多 300 个事件,而是仅限制过去 90 天内发生的事件
https://docs.github.com/en/rest/activity/events?apiVersion=2022-11-28#list-public-events-for-a-user ,它可以在 GitHub 当前的 HTML 显示和网络抓取中工作,而不是使用他们的 API(因为我不能找到一种通过他们的 API 获取此类数据的方法)。请注意,每个事件的详细信息虽然可以显示在 UI 中,但却是通过私人调用激活的,因此我不认为有一种简单的方法可以访问该数据。
2024 年第四季度:
Events API、Atom feed、/timeline 和 /dashboard-feed 功能的数据保留即将发生变化
(2024 年 11 月)目前,您可以在查看或使用特定事件功能时从有权访问的数据表中查询最多 90 天的事件:Events API(包括推送事件)、
Atom feed、/时间线 ,或 /仪表板馈送。 2025 年 1 月 30 日,我们将把这些功能的数据保留期限从 90 天修改为 30 天。 我们进行此更改是为了帮助 GitHub 继续为所有用户扩展,同时继续为这些功能的现有客户提供仍然查询和查看最近重要事件信息的能力。
–
受影响的相关API有::
/events
列出公共事件
–/networks/{owner}/{repo}/events
:列出存储库网络的公共事件–/orgs/{org}/events
:列出公共组织活动–/repos/{owner}/{repo}/events
:列出存储库事件–/users/{username}/events
:列出经过身份验证的用户的事件–/users/{username}/events/orgs/{org}
:列出经过身份验证的用户的组织事件–/users/{username}/events/public
:列出用户的公共事件–/users/{username}/received_events
:列出经过身份验证的用户收到的事件–/users/{username}/received_events/public
:列出用户收到的公共事件–/feeds
:获取提要
您预计什么时候会发生变化? 2025 年 1 月 30 日,我们将把这些指定事件功能的查询窗口从 90 天减少到 30 天。 在此之前,我们将在 2024 年 12 月 3 日对这一更改进行 24 小时测试。额外支持
这将允许您查询以前不可用的与讨论相关的事件。
作为此更改的一部分,我们将添加一个附加事件 (DiscussionEvent) 作为事件 API 的新事件类型。如果您需要进一步访问历史记录,我们建议使用每周或每日导出的工作流程。
我可以在哪里了解更多信息?如果您有疑虑、意见或反馈,请加入我们在
GitHub 社区的讨论。