问题标签 [github3.py]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
31 浏览

github3.py - 使用预览 API 的技术

我经常发现我想使用 GitHub 提供的预览 API。是否有推荐的方法来添加这些 API 以尽量减少支持时的麻烦?(例如https://developer.github.com/v3/repos/invitations/

我目前的方法是破解本地更改 - 一定有更好的方法!

如果添加的方式可以在拉取请求的路径上,则加分。

0 投票
2 回答
5258 浏览

python - github3 0.9.6 TypeError:pop() 最多接受 1 个参数(给定 2 个)

我目前使用的是 github3.py 版本 0.9.6,并且在调用github3.organization(login)函数时收到错误消息:

我希望我能得到一些帮助来解决这个问题。具体来说,我很好奇上次通话中 None 来自哪里。

提前感谢您的帮助!

EDIT1:我正在尝试根据用户提供的现有组织列表调用特定组织,在我的情况下,该列表远小于组织的总列表,因此在这种情况下迭代所有组织对我没有好处(如果没有给出列表,这恰好是我的默认情况)。

再次感谢!

EDIT2:我正在实现的代码示例,显然微不足道(不能提供私人信息):

EDIT3:我知道 gh.organization 函数是导致我的代码出现问题的原因,从堆栈跟踪可以看出。我的问题是关于 github3 的库,并询问我如何解决/修复 models.py 中的 pop() 函数,这是引发错误的函数。

EDIT4:感谢 pdb,我解决了这个问题:通过代码,我发现 url 生成是动态的,基于组织函数的输入。

具体来说,我所拥有的是我们组织的默认基本 URL,它正确收集了我们的组织数据。我需要做的是修改我的代码以使用两个不同的 url,基于获得组织列表与获取所有组织的条件。

此问题现已解决。感谢大家!

0 投票
1 回答
55 浏览

github-api - github3.py授权丢失令牌/多台机器

我可能在做一些愚蠢的事情,但是......

尝试使用以下代码检索令牌时:

auth = github3.authorize(user, password, scopes, note, two_factor_callback = two_factor_callback)

我发现 API 创建了一个令牌,然后我将其存储在本地,而且一切都是 hunky dory。

但是,如果我丢失了本地存储的令牌,或者移动到另一台没有本地存储令牌的机器上,我会从授权中返回失败。

似乎一旦为给定note值创建了令牌,就不能再次获得它,或者用新的值覆盖它。

对于机器的变化,我怀疑fingerprintgithub API中的参数需要实现。一个临时的解决方法是note用你所在的机器独有的东西来加盐,比如 MAC 地址,但这有点难看。

对于令牌存在,但它的本地副本已丢失(例如,用户从我存储它的钥匙串中删除它)的情况,唯一的解决方案似乎是登录到 github 网站并手动删除令牌!

这对我来说有点违反直觉!我在这里想念什么?

我可以看到,也许 github 的服务器没有存储整个令牌,因此无法再次返回它 - 但在这种情况下,我希望能够以一种干净的方式重新生成它。也许有一个,我错过了?

0 投票
1 回答
318 浏览

python - 从 Github gist 获取修订数据

我正在尝试获取修订数据形式的要点并以 json 的形式存储。

python apis新手请点亮我的伙计们

0 投票
1 回答
170 浏览

python - 保存与 gist 版本不同名称的 csv 文件并显示差异

我有一个 gist(csv 格式),它每天更新并包含n 个修订。每个修订数据彼此不同。

我需要知道每个修订之间的区别,所以我使用 gist api 来检索可以保存在 csv 中的修订

我的要求:

  1. 如何下载并保存每个 url csv 即 example.csv 具有不同的名称?
  2. 如何获得每个修订版本的差异?

在这里发现如何下载文件。我尝试使用urllib,请求pypackages,但我不知道我在哪里。谢谢

O/p:我有 4 个修订版,所以它显示了 4 个 urlhttps://github.com/gist/eec70654d178a8e1fe497d0bce94e0db/raw/5c058121cc4f289773b7013208ca5c5b0d97ba33/example.csv https://github.com/gist/eec70654d178a8e1fe497d0bce94e0db/raw/cfb04e18bdf18bf7ab0b708951f62d2095c49f7d/example.csv https://github.com/gist/eec70654d178a8e1fe497d0bce94e0db/raw/a20174f568129df4348d355eb0d6e378db7fa646/example.csv https://github.com/gist/eec70654d178a8e1fe497d0bce94e0db/raw/137c57ef411067564341d389571dab2da070c828/example.csv

0 投票
1 回答
278 浏览

github3.py - 使用 github3.py 列出给定用户的所有 repos/commits 的推荐方法

我正在构建一个 GitHub 应用程序来从我们的内部存储库中提取提交信息。我正在使用以下代码来迭代所有提交:

添加/删除/总计值都返回为0,并且文件属性始终为 []。当我单击 url 时,我可以看到情况并非如此。我已经通过curl调用验证了 AP​​I 确实有这些属性的记录。

在文档中阅读更多内容,似乎iter_commits不赞成使用iter_user_commits. 这可能是为什么它没有返回有关提交的所有信息的情况吗?但是,当我像这样使用此方法时,它不会为我返回任何存储库:

简而言之,我想知道推荐的方法是获取用户有权访问的所有存储库的所有提交。

0 投票
1 回答
1074 浏览

git - 如何从 Github 存储库中获取和列出所有文件

我正在尝试列出 Github 存储库中的所有文件。

到目前为止,我只能输出 repo 分支和名称。有任何想法吗?

0 投票
1 回答
194 浏览

python - 如何使用 github3.py 仅拉取修改过的提交/拉取请求?

我正在编写一个 ETL 作业,在该作业中,我GitHub在数据仓库中的存储库中保留更新的提交、拉取请求和文件列表。我目前正在存储并传递etags给各种迭代器,但我认为我不理解如何正确地做到这一点。

我也很难理解它到底在object.refresh(conditional=True)做什么。如果我遍历 repo 上的所有提交,然后调用commit.refresh(conditional=True)每个提交,我会收到一个 304 异常来处理,所以我知道不要将该提交包含在数据仓库中,因为它没有更改?拉取请求也是如此。当我打电话时repository.refresh(conditional=True),它似乎忽略了回购中的新提交。

如果我传递一个etagto repo.iter_commits,它会只返回修改过的提交,还是如果有任何更改,它是否返回 repo 的所有提交?

这是我目前使用的基本工作流程:

我将每个迭代器包装在一个包装类中,该类处理检索先前etags的、迭代后的存储etags和检查速率限制。

我的首要目标是拉取自我上次请求以来发生更改的任何新提交/拉取请求。我假设那时我想从数据库中删除现有条目并使用新条目进行更新。

github3.py使用API实现这一目标的正确和最有效的方法是什么?

编辑:我再次检查了文档,并且有一个since参数可以解决我的提交问题。所以我只需要知道如何正确使用 etags 来拉取更新的拉取请求数据。

0 投票
1 回答
108 浏览

python - 如何在 github3py 上指定团队权限

我正在尝试使用 github3py 编写一个简单的脚本,将存储库添加到团队中。

add_repo(repo, team)方法无论如何都没有指定我希望我的团队拥有什么样的权限,根据:http: //github3.readthedocs.io/en/develop/orgs.html

vs 在 github 文档中,它说您可以将权限作为参数传递: https ://developer.github.com/v3/orgs/teams/#add-or-update-team-repository

那么这只是没有在 github3.py 中实现还是我很困惑?

我希望能够添加一个具有读写权限的团队。这默认为读取。

0 投票
2 回答
530 浏览

python - 在 python 中使用 github3 的请求之间的延迟

我正在使用 python github3 模块,我需要设置对 github api 的请求之间的延迟,因为我的应用程序在服务器上产生了很多负载。

我正在做诸如

我发现 GitHub 使用 requests 向 github api 发出请求。 https://github.com/sigmavirus24/github3.py/blob/3e251f2a066df3c8da7ce0b56d24befcf5eb2d4b/github3/models.py#L233

但是我不知道我应该传递什么参数或者我应该改变什么属性来设置请求之间的一些延迟。

你能给我一些建议吗?