Python学习笔记13 -- API的说明及使用

一、API说明

1、API:Application Programming Interface -- 接口

2、Restful API:基于网页的API

3、JSON:JavaScript objection Notation

4、很多数据都可以找到公用API

二、安装requests模块

在终端输入:

可以保证使用当前python版本的指令:python -m pip install 模块名称

如果能保证只有一个python版本,也可用这个:pip install 模块名称

删除包:

python -m pip uninstall 模块名称

三、调用API

1、注册高德天气API,获得属于自己的KEY

2、使用requests模块部分:

以高德天气的北京地区为例:

python 复制代码
import requests

#API接口网址
url = 'https://restapi.amap.com/v3/weather/weatherInfo?city=110101&key=<>' 

res = requests.get(url)
WeatherJson = res.text  #属于一个属性(只输出text部分)
print(WeatherJson)

3、使用json模块进行操作:

python 复制代码
import json
WeaJson = json.loads(WeatherJson) #将内容加载成json格式
#获取其中的温度
wendu = WeaJson['lives'][0]['weather']
print(wendu)

注:在读取温度这一步,需要注意json的格式,否则会报错:

lives下面的内容为:

javascript 复制代码
"lives":
[
    {
        "province":"北京",
        "city":"东城区",
        "adcode":"110101",
        "weather":"晴",
        "temperature":"33",
        "winddirection":"西南",
        "windpower":"≤3",
        "humidity":"28",
        "reporttime":"2024-06-14 17:03:12",
        "temperature_float":"33.0",
        "humidity_float":"28.0"
    }
]

由于lives下面有一个中括号[],内部有一个花括号{},因此在lives后不能直接使用weather,需要选取中括号内部的第一部分(所有内容所在的花括号的位置,用【0】来选取,否则会报错):

原因为:对于复杂的字典需要一层一层往下取

相关推荐
weixin_580614004 分钟前
模型持久化不会提升准确率:揭秘训练集误用导致的“虚假精度”陷阱
jvm·数据库·python
2401_887724506 分钟前
Layui弹出层layer.tab如何监听标签页切换的具体序号
jvm·数据库·python
2601_949817926 分钟前
大厂Java进阶面试解析笔记文档
java·笔记·面试
2501_9142459321 分钟前
构建 Go CLI 应用的最佳实践:纯 Go 交互式命令行库选型与使用指南
jvm·数据库·python
m0_5145205722 分钟前
Go语言变量如何声明和使用_Go语言变量定义完整教程【通俗】
jvm·数据库·python
John.Lewis26 分钟前
C++进阶(12)附加学习:STL之空间配置器(了解)
开发语言·c++·笔记
独小乐28 分钟前
019.ADC转换和子中断|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·mcu·arm
xuanwenchao28 分钟前
ROS2学习笔记 - 2、类的继承及使用
服务器·笔记·学习
weixin_5860614634 分钟前
CSS Grid布局如何解决图片溢出网格单元_设置object-fit与网格尺寸.txt
jvm·数据库·python
计算机徐师兄1 小时前
Python基于农村和城镇人民生活数据的可视化系统(附源码,文档说明)
python·生活·农村和城镇人民生活数据·python人民生活数据·农村和城镇人民生活数据可视化·生活数据可视化系统·python生活数据的可视化