背景介绍
网络请求是互联网通信的基础,用户通过输入URL发送请求后,系统需获取响应数据并输出结果。本项目的核心是使用 Python 的 requests 库实现 GET 请求,并验证 HTTP 状态码,确保请求成功。
技术要点
1. 使用 requests.get() 发送请求
import requests
url = "https://api.example.com/data"
response = requests.get(url)
2. 数据结构处理
响应内容可能为 JSON 格式,需解析并验证状态码。
import json
if response.status_code == 200:
data = json.loads(response.text)
print(f"{'status' if 'status' in data else 'status'}.{'data' if 'data' in data else 'data'}")
3. 状态码验证
若请求失败,需检查 HTTP 状态码是否为 404 或 500。
if response.status_code != 200:
print("HTTP 错误:", response.status_code)
代码实现
Python 实现示例
import requests
def send_request(url):
# 发送 GET 请求
try:
response = requests.get(url)
# 处理响应数据
response.raise_for_status() # 验证 HTTP 状态码
if response.status_code == 200:
data = json.loads(response.text)
print(f"{'status' if 'status' in data else 'status'}.{'data' if 'data' in data else 'data'}")
else: # 404/500 请求失败
print(f"HTTP 错误: {response.status_code}")
return data
except requests.exceptions.RequestException as e:
print("网络请求异常:", e)
return None
# 示例使用
url_data = send_request("https://api.example.com/data")
if url_data:
print("请求成功:", url_data)
else:
print("请求失败,无法获取数据")
示例输出
{"status": "success", "data": "Hello, World!"}
总结
本项目通过 Python 的 requests 库实现 GET 请求,验证 HTTP 状态码并输出响应数据。技术要点包括:网络请求处理、数据结构解析以及状态码验证。整个实现过程约 1~3 天,涉及基础网络知识。
扩展建议:
– 如果响应内容非 JSON,可使用 response.read() 获取实际内容并验证格式。
– 集成日志输出或日志中间件可提升调试效率。