我正在为Github APIv3寻找一个适合我的python库。
我找到了GH API docs中提到的一个库(python-github3)。在ipython玩了一两个小时后,我发现它真的不适合探索/工作。我又看了看,发现至少有很多人试图写这样一个图书馆。更有前途的(一瞥)是PyGithub和another python-github3,这显然与第一个不同。
在接下来的几天里,我要一个接一个地尝试一个图书馆之前,我想问问SO社区是否有一个公认的、明确的、显而易见的图书馆选择?
我不喜欢第一个库那种(对我来说)获取数据的非直观方式——有些东西是作为属性获取的,有些是作为方法的返回值获取的,返回值是一些复杂的对象,必须进行分页和迭代,等等
在这方面,PyGithub乍一看就更吸引人了—很明显,它深入到对象层次结构中,然后得到包含所需内容的属性:
for repo in g.get_user().get_repos():
print repo.name
那么,有智慧的珍珠可以分享吗?我知道我没有足够的技能来快速判断图书馆的质量,这就是为什么我转向了SO社区。
编辑:fwiw,我最终使用了PyGithub。它工作得很好,而且作者很容易接受反馈和错误报告。:-)
文档对于PyGitHub来说很糟糕,但是产品很棒。下面是一个快速示例,用于实际检索文件、在文件开头使用新注释更改文件并将其提交回
最后,我使用了PyGithub。它工作得很好,而且作者很容易接受反馈和错误报告。:-)
(从我的编辑改为原来的问题,以获得更好的可见性)
既然您提到您是一个初级的python程序员,我建议您首先尝试使用不带任何Github库的JSON API。这真的没那么难,而且它在以后的编程生活中将对您有很大帮助,因为相同的方法可以应用到任何JSON API。尤其是如果试用图书馆似乎需要几天的时间。
我不是说某些库不容易使用,我只是说,从长远来看,直接使用API的额外努力可能是值得的。至少它能帮助你理解为什么有些库看起来“不直观”(如你所说)。
获取django存储库创建时间的简单示例:
这是使用流行的requests library。在代码中,您自然也需要处理错误情况。
如果您需要使用身份验证进行访问,则会更复杂一些。
相关问题 更多 >
编程相关推荐