《Python编程 从入门到实践》第十七章 使用API

本章介绍如何使用Python API从Github获取流行仓库并进行可视化。尽管2016年版教材的pygal库产生的SVG文件无法实现交互性,但通过更新到2020年版教材的plotly库,可以生成具有交互性的html图表,提供更好的用户体验。在API调用过程中,主要涉及requests和json模块,以及数据的收集和可视化绘制。
摘要由CSDN通过智能技术生成

这一章中,使用API的基本实践,是从Github中提取广受欢迎的仓库,然后将其可视化。
今天依然首先使用2016版教材,全程走下来没有什么问题,但是在看最终结果的时候,得到的svg文件不论用什么浏览器打开都不能够实现交互性,添加的自定义工具提示当然也没有什么用。大概的原因,还是pygal本身升级了,代码的运作模式发生了改变。

针对API调用本身,不论是2020年的教材还是2016的教材,都差不多,如下:

url = 'https://api.github.com/search/repositories?q=language:python&sort=stars'
r = requests.get(url)
response_dict = r.json()
repo_dicts = response_dict['items']
  1. 用“import requests”导入requests模块;用import json导入json模块
  2. 使用方法get(),放入指定的url地址,请求,并且获得返回值
  3. 用json()方法来将获得的返回值(json格式的)转换为Python可以理解的字典,并且存入response_dict之中
  4. 通过键‘items’,将response_dict对应的库都放到我们新创建的空字典repo_dicts中。这样就完成了基础信息的收集,可用于下面图像的绘制了。

按照2016版教材,使用pypal堆的代码如下:

import requests
import pygal
from pygal.style import LightColorizedStyle as LCS, LightenStyle as LS

url = 'https://api.github.com/search/repositories?q=language:python&sort=stars'
r = requests.get(url)
response_dict = r.json()
repo_dicts = response_dict['items']

names, stars = [], []
for repo_dict in repo_dicts:
    names.append(repo_dict['name'])
    stars.append(repo_dict['stargazers_count'])

#333366属于深蓝色
my_style 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值