GitHub API使用Python获取问题描述

时间:2016-12-09 12:32:05

标签: python-3.x github-api github3.py

任务:(使用GitHub API) 1)获得给定仓库的所有封闭里程碑 2)获取该里程碑的所有问题 3)为每个问题得到它的描述 4)最后,使用Markdown为例,创建一个页面供PM查看

我使用Python 3.5,使用lib github3.py,我得到了1& 2但是在#3时遇到了问题。 查看GitHub文档,我不确定它是否支持检索问题的描述。

我正在查看此API文档: https://developer.github.com/v3/issues

我的问题是,#3可以完成吗?我错过了什么吗?

谢谢。到目前为止我所拥有的是:

g = github3.login(token='123...')
r = g.repository(owner='owner', repository='services')
for m in r.milestones(state='closed'):
    print(m.as_json()) # this works giving me all the milestones
for i in r.issues(milestone=5, state='closed'):
    print(i.pull_request()) # works giving me all the pull requests from here 

1 个答案:

答案 0 :(得分:0)

因此,问题的描述通常是从对象的body部分的API返回。

可能的问题(我之前没有使用过这条路径)是当你列出这样的问题时,可能不会返回。如果是这种情况,那么您将需要执行以下操作:

for m in r.milestones(state='closed'):
    for i in r.issues(milestone=m.number, state='closed'):
         i.refresh()
         print(i.body)

然而,值得注意的是,你到达那里的身体将是用户输入的身体。如果您想在没有渲染的情况下将其显示为HTML,github3.py会自动从GitHub API请求您,这样您就可以只访问

i.body_html

或者如果您想要所有内容都是纯文本

i.body_text

干杯!