如何在Python的API请求中自动添加当前日期及7天前日期
自动设置API请求的日期范围(前7天至当日)
可以借助Python的datetime模块自动计算并格式化日期,结合requests的参数传递功能实现需求,具体实现如下:
导入所需模块
需要datetime处理日期计算,requests发送API请求:import datetime import requests计算目标日期
获取当前日期,再通过timedelta计算前7天的日期:# 获取当日日期 end_date = datetime.date.today() # 计算前7天的日期 start_date = end_date - datetime.timedelta(days=7)格式化日期为API要求的格式
API需要dd-mm-yyyy格式,用strftime方法完成转换:formatted_start = start_date.strftime("%d-%m-%Y") formatted_end = end_date.strftime("%d-%m-%Y")构造并发送API请求
推荐用params参数传递查询参数,比直接拼接URL更规范,还能自动处理编码问题:my_headers = {} # 替换为你的实际请求头内容 url = "http://172.24.105.27:8092/" params = { "Co": "LT", "StartDate": formatted_start, "EndDate": formatted_end } response = requests.get(url, params=params, headers=my_headers) s = response.json()
关键说明
timedelta(days=7):用于计算日期差值,这里实现往前推7天的逻辑strftime("%d-%m-%Y"):%d对应两位日期、%m对应两位月份、%Y对应四位年份,完全匹配API要求的日期格式- 使用
params参数:requests会自动完成URL拼接与特殊字符编码,比手动拼接更不易出错
内容的提问来源于stack exchange,提问作者coder
相关产品推荐
相关产品推荐

