You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用requests库发起HTTP/HTTPS GET请求后如何获取对应时间戳?

解决方案

1. 记录本地请求时间戳

你可以在请求执行前后分别采集本地时间戳,即可获得请求发起、结束的时间以及实际耗时:

import requests
from datetime import datetime

# 采集请求发起时间戳(单位:秒)
req_start_ts = datetime.now().timestamp()
raw = requests.get(url)
# 采集响应接收完成时间戳
req_end_ts = datetime.now().timestamp()

print(f"请求发起时间戳:{req_start_ts}")
print(f"请求总耗时:{req_end_ts - req_start_ts:.2f} 秒")

2. 获取服务器端响应时间戳

如果你想确认是本地网络延迟还是服务器端返回了非实时内容,可以读取响应头的Date字段,这是服务器返回响应时的标准UTC时间:

import requests
from datetime import datetime

raw = requests.get(url)
server_date_str = raw.headers.get("Date")
if server_date_str:
    # 解析HTTP标准时间格式
    server_dt = datetime.strptime(server_date_str, "%a, %d %b %Y %H:%M:%S GMT")
    server_ts = server_dt.timestamp()
    print(f"服务器生成响应的时间戳:{server_ts}")

注意:Date字段是HTTP协议规定的标准响应头,绝大多数HTTP服务都会返回,少数特殊配置的服务可能没有这个字段

额外排查建议

如果服务器返回的时间戳和你本地请求时间差很小,但拿到的内容是数分钟前的,说明接口本身返回的是缓存数据,可以在请求时添加禁用缓存的请求头尝试获取实时内容:

headers = {
    "Cache-Control": "no-cache",
    "Pragma": "no-cache"
}
raw = requests.get(url, headers=headers)

内容的提问来源于stack exchange,提问作者Felix Amador

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 09:15:02