python使用API获取实时数据并绘制图形
使用API调用请求数据
本示例使用GITHUB的API来请求有关该网站中PY项目的信息,并使用Pygal生成交互式可视化。
https://api.github.com/search/repositories?q=language:python&sort=stars
上面这个地址,返回github当前托管了多少个py项目,还有有关最受欢迎的PY仓库的信息。
{
total_count: 17592022, // 项目总数
incomplete_results: true, // 如果github无法全面处理该API 它返回的值是true; false代表请求成功,并且展示的结果是全部、完整的
items: [] // 每一项的信息
}
接口中各个参数解析:
search/repositories:让API搜索GITHUB上所有仓库
q=language:python:q表示查询,language:python 指出只想获取py仓库的信息
sort=stars:按照星级进行排序
requests
pip install --user requests
先来做一个简答的请求
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(response_dict.keys())
最终运行结果:
status code 200
dict_keys(['total_count', 'incomplete_results', 'items'])
r.status_code:获取本次请求的状态码,200表示请求成功
response_dict = r.json():将这些信息转换为一个py字典,并用变量接收
response_dict.keys():打印字典中的“键”