高端网站定制平台,2024房地产彻底结束,品牌网站官网,泰安seo优化文章目录 安装requests库使用requests库调用API发送Get请求基本示例带参数的GET请求处理API认证#xff08;如API Key#xff09;错误处理和异常捕获处理返回值获取状态获取用户ID获取用户名和详细信息 处理嵌套结构或列表返回值获取所有用户信息列表中的每个用户的信息 在Py… 文章目录 安装requests库使用requests库调用API发送Get请求基本示例带参数的GET请求处理API认证如API Key错误处理和异常捕获处理返回值获取状态获取用户ID获取用户名和详细信息 处理嵌套结构或列表返回值获取所有用户信息列表中的每个用户的信息 在Python中使用requests库来调用外部API。 安装requests库
如果你还没有安装requests库你可以通过pip来安装它
pip install requests使用requests库调用API
发送Get请求基本示例
import requests
# 定义API的URL
url https://api.example.com/data# 发送GET请求
response requests.get(url)# 检查请求是否成功
if response.status_code 200:# 解析JSON响应data response.json()print(data)
else:print(请求失败状态码, response.status_code)带参数的GET请求
如果你需要向API传递参数可以使用params参数
import requestsurl https://api.example.com/data
params {key1: value1, key2: value2}response requests.get(url, paramsparams)
if response.status_code 200:data response.json()print(data)
else:print(请求失败状态码, response.status_code)
POST请求
如果你需要向API发送POST请求可以这样做import requestsurl https://api.example.com/data
payload {key1: value1, key2: value2}response requests.post(url, jsonpayload) # 使用json参数发送JSON数据
if response.status_code 200:data response.json()print(data)
else:print(请求失败状态码, response.status_code)处理API认证如API Key
很多API要求提供认证信息比如API Key。这可以通过在请求头中添加认证信息来实现
import requestsurl https://api.example.com/data
headers {Authorization: Bearer YOUR_ACCESS_TOKEN} # 使用Bearer令牌进行认证response requests.get(url, headersheaders)
if response.status_code 200:data response.json()print(data)
else:print(请求失败状态码, response.status_code)错误处理和异常捕获
在调用API时处理可能的错误是很重要的。你可以使用try-except块来捕获requests可能抛出的异常
import requestsurl https://api.example.com/data
try:response requests.get(url)response.raise_for_status() # 如果响应状态码不是200将抛出HTTPError异常data response.json()print(data)
except requests.exceptions.HTTPError as errh:print(Http Error:, errh)
except requests.exceptions.ConnectionError as errc:print(Error Connecting:, errc)
except requests.exceptions.Timeout as errt:print(Timeout Error:, errt)
except requests.exceptions.RequestException as err:print(OOps: Something Else, err)处理返回值
访问JSON数据中的信息 假设你的JSON数据结构如下
{status: success,data: {user_id: 12345,username: example_user,details: {email: userexample.com,phone: 123-456-7890}}
}你可以通过键名访问这些信息
获取状态
status data[status]
print(status) # 输出: success获取用户ID
user_id data[data][user_id]
print(user_id) # 输出: 12345获取用户名和详细信息
username data[data][username]
email data[data][details][email]
phone data[data][details][phone]
print(username) # 输出: example_user
print(email) # 输出: userexample.com
print(phone) # 输出: 123-456-7890处理嵌套结构或列表返回值
如果JSON数据中包含嵌套的字典或列表你可以用相同的方法访问它们
{status: success,users: [{user_id: 12345,username: example_user,email: userexample.com},{user_id: 67890,username: another_user,email: anotherexample.com}]
}获取所有用户信息列表中的每个用户的信息
for user in data[users]:user_id user[user_id]username user[username]email user[email]print(fUser ID: {user_id}, Username: {username}, Email: {email})通过这些步骤你可以在Python中有效地调用外部API并处理返回的数据。