import requests # 1
# 执行API调用并存储响应
url = 'https://api.github.com/search/repositories?q=language:python&sort=stars' # 2
r = requests.get(url) # 3
print("Status code:", r.status_code) # 4
# 将API响应存储在一个变量中
response_dict = r.json() # 5
# 处理结果
print(response_dict.keys())
输出:
Status code: 200
dict_keys(['total_count', 'incomplete_results', 'items'])
200
表示请求成功)。import requests
# 执行API调用并存储响应
url = 'https://api.github.com/search/repositories?q=language:python&sort=stars'
r = requests.get(url)
print("Status code:", r.status_code)
# 将API响应存储在一个变量中
response_dict = r.json()
print("Total repositories:", response_dict['total_count']) # ?
输出:
Status code: 200
Total repositories: 10607930
在?处,我们打印了与’total_count’ 相关联的值,它指出了GitHub总共包含多少个Python仓库。
与’items’ 相关联的值是一个列表,其中包含很多字典,而每个字典都包含有关一个Python仓库的信息。
代码(接上):
# 探索有关仓库的信息
repo_dicts = response_dict['items'] # ?
print("Repositories returned:", len(repo_dicts))
# 研究第一个仓库
repo_dict = repo_dicts[0] # ?
print("\nKeys:", len(repo_dict)) # ?
for key in sorted(repo_dict.keys()): # ?
print(key)
在?处,我们将这个字典列表存储在repo_dicts 中。接下来,我们打印repo_dicts 的长度,以获悉我们获得了多少个仓库的信息。
为更深入地了解返回的有关每个仓库的信息,我们提取了repo_dicts 中的第一个字典,并将其存储在repo_dict 中(见?)。接下来,我们打印这个字典包含的键数,看看其中有多少信息(见?)。在?处,我们打印这个字典的所有键,看看其中包含哪些信息
输出:
Repositories returned: 30
Keys: 80
allow_forking
archive_url
archived
--snip--
visibility
watchers
watchers_count
web_commit_signoff_required