使用 Python 解析 JSON?
Posted
技术标签:
【中文标题】使用 Python 解析 JSON?【英文标题】:Parsing JSON using Python? 【发布时间】:2015-04-16 01:18:53 【问题描述】:我正在使用 GitHub API 来提取关于存储库提交的 JSON 数据。
指向 JSON 文件的链接:https://api.github.com/repos/ErinBailey/cs399-social/commits
我正在尝试获取所有致力于项目的用户的“ID”。我该怎么做呢?现在我看到 JSON 文件的结构是 sha/author/id。
到目前为止,我的代码是:
r = requests.get('https://api.github.com/repos/ErinBailey/cs399-social/commits', auth=('cs399contributions', 'contributions399'))
input_log = json.loads(r.text)
print(json.dumps(input_log, indent=4))
user_ids = [x for x in input_log if x['sha/commit/author/id'] > '0']
output_json = json.dumps(user_ids,indent=4)
print output_json
【问题讨论】:
【参考方案1】:这是我的代码。
import requests
import json
r = requests.get('https://api.github.com/repos/ErinBailey/cs399-social/commits',
auth=('cs399contributions', 'contributions399'))
input_log = json.loads(r.text)
user_ids = [x['committer']['id'] for x in input_log if x['committer'].get('id')]
output_json = json.dumps(user_ids, indent=4)
print output_json
【讨论】:
我收到以下错误:TypeError: string indices must be integers on user_ids = [x['committer']['id'] for x in input_log if x['committer'].get( 'id')] 这与我遍历字典而不是列表有关吗?以上是关于使用 Python 解析 JSON?的主要内容,如果未能解决你的问题,请参考以下文章