历史空气质量API接口能力边界与适用场景深度解析
适用场景哪些业务需要历史空气质量数据历史空气质量API提供按城市年月查询逐日AQI和六项污染物PM2.5、PM10、SO2、NO2、CO、O3浓度以及月度汇总信息。以下场景可充分利用该接口环境科学研究分析多年空气质量趋势评估区域排放政策效果。例如对比2013年与2023年北京PM2.5年均值变化。健康与流行病学追溯特定时间段个体的暴露水平关联呼吸系统疾病发病率。数据可视化与报告制作历史空气污染热力图、年度空气质量报告或城市排名变化图表。保险精算与风险评估将空气污染作为风险因子纳入气候相关保险产品模型。旅游与出行规划查询目的地历史空气状况辅助选择出行时机。接口能力边界可查范围时间范围2013年1月至当前月。注意当前月份可能未完结数据仅供参考。空间覆盖全国主要城市。素材仅说明“覆盖全国主要城市”具体支持的城市列表需查阅官方文档接口未直接提供城市枚举。查询粒度按城市年月返回该月每日数据。不支持自定义日期范围可通过连续多次调用实现多个月份查询。数据来源与精度数据源自官方监测站但接口声明数据仅供参考不可用于法律或医疗决策。每日AQI计算依据国家环保标准HJ 633-2012首要污染物通过IAQI分指数确定。污染物浓度单位PM2.5、PM10、SO2、NO2、O3为μg/m³CO为mg/m³以实际返回值为准。性能与鉴权限制QPS5次/秒。适合低频批量处理高频场景需自行控制请求间隔。鉴权方式可选Authorization头Bearer Token或X-API-Key头。匿名调用可能受额度限制建议准备后获取API Key以提升稳定性。素材未说明具体额度以官方文档为准。请求参数与鉴权请求方法POST固定地址https://v1.apizero.cn/api/air-historyHeader参数参数名必需类型说明Content-Type否string设为application/json即可Authorization否string格式Bearer 你的API KeyX-API-Key否string直接传入API Key与Authorization二选一请求体JSON对象两个必填字段字段类型必需说明示例citystring是城市中文名如“北京”“北京”monthstring是年月格式YYYYMM可查2013-01至当前月“202503”{ city: 北京, month: 202503 }curl示例与代码接入最简curl请求使用X-API-Keycurl -sS -X POST \ -H Content-Type: application/json \ -H X-API-Key: YOUR_API_KEY \ -d {city:北京,month:202503} \ https://v1.apizero.cn/api/air-history使用Authorization Bearer Tokencurl -sS -X POST \ -H Content-Type: application/json \ -H Authorization: Bearer YOUR_TOKEN \ -d {city:北京,month:202503} \ https://v1.apizero.cn/api/air-historyPython接入示例import requests import json url https://v1.apizero.cn/api/air-history headers { Content-Type: application/json, X-API-Key: YOUR_API_KEY } payload {city: 北京, month: 202503} try: resp requests.post(url, headersheaders, jsonpayload, timeout10) data resp.json() if data.get(code) 0: summary data[data][summary] print(f月度平均AQI: {summary[aqi_avg]}, 等级: {summary[aqi_avg_level]}) print(f优良天数: {summary[days_distribution][excellent]}天优, {summary[days_distribution][good]}天良) else: print(f请求失败: {data.get(msg)}, request_id: {data.get(request_id)}) except requests.exceptions.RequestException as e: print(f网络异常: {e})注意实际部署时应将API Key存储在环境变量中避免硬编码。返回字段解读外层结构{ code: 0, msg: 成功, request_id: abc123, data: { ... } }code: 0表示成功非0为错误。request_id: 唯一标识可用于日志排查。data.daily每日数据数组每个元素包含字段类型说明datestring日期YYYY-MM-DD格式aqiintegerAQI指数levelstring空气质量等级如“良”、“轻度污染”等pollutantsobject六项污染物浓度pm2_5, pm10, so2, no2, co, o3primary_pollutantstring首要污染物名称如“细颗粒物(PM2.5)”rankinteger全国城市排名示例123具体排名范围以文档为准data.metameta: { city: 北京, month: 202503, month_format: 2025年3月, total_days: 31 }total_days: 当月实际天数。data.summary月度汇总summary: { aqi_avg: 58.3, aqi_avg_level: 良, best_day: { date: 2025-03-05, aqi: 28, level: 优 }, worst_day: { date: 2025-03-20, aqi: 168, level: 中度污染 }, days_distribution: { excellent: 8, good: 18, light: 3, medium: 2, heavy: 0, severe: 0 } }aqi_avg: 月平均AQI浮点数。days_distribution: 各级别天数分布excellent优(0-50)good良(51-100)light轻度(101-150)medium中度(151-200)heavy重度(201-300)severe严重(300)。常见错误与排查HTTP状态码可能原因排查方法400请求体字段缺失/格式错误month超出范围检查city是否为中文、month格式是否为YYYYMM、是否在201301至当前月之间401API Key无效或未传递确认Header名称和值测试直接使用Bearer Token或X-API-Key403权限不足或IP被限制检查配额是否耗尽联系服务方429请求过于频繁超过QPS降低请求频率加入退避策略5xx服务端内部错误稍后重试若持续可检查官方状态页错误响应体中msg字段提供错误描述。记录request_id有助于向服务方反馈。工程化注意事项批处理策略按城市和月份逐条请求建议使用异步队列控制并发每个请求间隔至少200ms。本地缓存历史数据不变可将已查询结果缓存到SQLite或Redis减少重复调用与API消耗。错误重试对网络异常和5xx实现指数退避如首次1s二次2s四次后终止4xx错误不重试。密钥管理使用环境变量或密钥管理服务如Vault禁止硬编码。数据校验响应的total_days应与实际月份天数一致daily数组长度应与total_days匹配缺失值可能是当日无数据。多城市并行查询例如一次性查询多个城市同月数据需控制总QPS不超过5建议串行或限流。参考文档API文档页https://apizero.cn/aidocs/air-history原始Markdown文档https://apizero.cn/aidocs/air-history/raw.md

相关新闻

A股实时行情API最小可运行示例:从curl到参数全解

A股实时行情API最小可运行示例:从curl到参数全解

适用场景 当你在开发一个A股行情看板、盘中监控工具或量化回测系统时,需要实时获取某只股票的当前用量说明、涨跌幅、成交量以及历史分时数据。A股实时行情接口提供了从交易所直接整合的标准化数据,覆盖沪深北全部A股,既可以获取一秒钟的快照…

2026/10/26 11:41:28 阅读更多 →
TMS320F28388D controlCARD硬件解析与开发实战:从核心模块到避坑指南

TMS320F28388D controlCARD硬件解析与开发实战:从核心模块到避坑指南

1. 项目概述如果你正在寻找一款能够快速上手德州仪器C2000系列高性能微控制器,特别是面向工业实时控制、电机驱动或数字电源应用的开发平台,那么TMS320F28388D controlCARD(型号TMDSCNCD28388D)绝对是一个绕不开的选项。我接触过不…

2026/10/26 11:41:26 阅读更多 →
奖励黑客:如何设计抗作弊的团队激励机制

奖励黑客:如何设计抗作弊的团队激励机制

你有没有遇到过这种情况:团队花大价钱设计了一套奖励机制,结果员工们不是在提升业绩,而是在研究怎么“刷数据”?一个销售团队,KPI 看的是客户拜访量,结果有人一天上报 50 次“拜访”,实际都是电…

2026/10/26 11:41:27 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/26 12:00:21 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/27 4:06:49 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/27 7:21:53 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/26 12:00:21 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/27 6:20:47 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/27 4:06:50 阅读更多 →

日新闻

周新闻

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 12:00:19 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/27 7:21:50 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/26 8:34:37 阅读更多 →