第17章 · 使用API
项目2数据可视化第3阶段:使用requests请求GitHub等API数据并可视化。
知识点讲解
requests请求API
API(应用程序接口)让程序之间交换数据。使用requests库发送HTTP请求:
import requests
url = "https://api.github.com/search/repositories"
r = requests.get(url, params={"q": "language:python"})
data = r.json()
r.status_code 检查请求状态(200为成功),r.json() 将响应解析为Python字典/列表。
处理并可视化API数据
从GitHub API返回的数据中提取仓库名、星标数、简介等字段,按星标排序后使用Pygal或matplotlib生成可视化图表,直观展示最受欢迎的Python项目。注意API通常有访问频率限制,不要高频请求。
代码示例
requests请求GitHub API
演示使用requests获取GitHub仓库数据。
import requests
url = "https://api.github.com/search/repositories"
params = {"q": "language:python", "sort": "stars", "order": "desc", "per_page": 10}
headers = {"Accept": "application/vnd.github.v3+json"}
r = requests.get(url, params=params, headers=headers)
print(f"状态码: {r.status_code}")
data = r.json()
for repo in data["items"]:
print(f"{repo["name"]} ★{repo["stargazers_count"]} - {repo["description"][:50]}")