第17章 · 使用API

项目2数据可视化第3阶段:使用requests请求GitHub等API数据并可视化。

知识点 代码示例 章节测验(2 题)

知识点讲解

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]}")