全国油价查询免费 API 接口详解与调用实战(PHP / Python)

简介: 本文详解接口盒子提供的免费全国油价API:支持查询31省汽油(89/92/95/98等)、柴油、CNG/LNG等全品类实时价格及涨跌幅度,含多价区(如四川分一、二价区),每10个工作日更新,附PHP/Python调用示例与避坑指南。

本文基于接口盒子提供的全国油价查询免费 API整理而来,面向开发者做一份更系统、可照抄使用的教程。一般每 10 个工作日调整一次,覆盖汽油、柴油、CNG / LNG 等品类,对做车主类 App、物流成本测算、财经小工具都很实用。


一、接口能干嘛

一句话:给定「省 / 直辖市」名字,返回该省当前最新调价周期下的各品类油价 + 波动幅度,部分省份还会按「价区」拆分(比如四川分一价区、二价区,二价区含凉山州、攀枝花)。

支持油品包括但不限于:

  • 汽油:89 / 92 / 95 / 98
  • 乙醇汽油:e92 / e95 / e98
  • 爱跑系列:ap95 / ap98,以及乙醇版 ape95 / ape98
  • 柴油:0h、-10h、-20h、-35h、站库价 zyk
  • 天然气:CNG / LCNG / LNG

价格波动字段(xxbd)为负数即代表降价,正数就是涨价,单位是元/升(柴油同理)。


二、接口基本信息

项目

内容

请求地址

https://cn.apihz.cn/api/jinrong/youjia.php

请求方式

GET 或 POST 均可

数据格式

返回 JSON

费用

接口本身免费

公共 ID

示例使用公共 ID,生产环境建议换成自己的 ID/KEY 独享频次


三、请求参数(必填 3 个)

参数

名称

必填

说明

id

用户 ID

用户中心的数字 ID,如 id=10000000

key

通讯秘钥

用户中心生成的 KEY

sheng

省 / 直辖市

中文名,如 sheng=四川sheng=北京


四、返回参数速览

顶层字段:

  • code:200 成功 / 400 错误
  • msg:提示信息
  • sheng:省名
  • date:本次调价时间,如 2026年07月03日
  • data:对象,内含 data1/ data2…… 多个价区

单个价区(data1为例)核心字段:

  • jq:价区名(如一价区 / 二价区)
  • area:价区范围(有的省为空)
  • 92/ 95/ 98/ 89:对应汽油价格
  • 92bd/ 95bd…:对应波动
  • 0h/ 10h/ 20h/ 35h:柴油
  • cng/ lcng/ lng:天然气
  • 乙醇 / 爱跑系列字段同理,不一一列举

💡 某地区没卖的油品,对应字段会返回 null,解析时别硬取值。


五、返回示例

{
  "code": 200,
  "sheng": "四川",
  "date": "2026年07月03日",
  "data": {
    "data1": {
      "jq": "一价区",
      "area": "",
      "92": 7.28,
      "92bd": -0.76,
      "95": 7.78,
      "95bd": -0.81,
      "ap98": 8.88,
      "ap98bd": -0.92,
      "0h": 6.88,
      "0hbd": -0.78,
      "10h": 7.30,
      "10hbd": -0.82
    },
    "data2": {
      "jq": "二价区",
      "area": "含凉山州、攀枝花",
      "92": 7.35,
      "92bd": -0.76,
      "95": 7.85,
      "95bd": -0.81,
      "ap98": 8.95,
      "ap98bd": -0.93,
      "0h": 6.97,
      "0hbd": -0.77
    }
  }
}

可以看到这一轮四川 92 降了 0.76 元、95 降了 0.81 元,二价区比一价区略贵几分钱。


六、调用示例:PHP

方式 A · GET(最简单)

<?php
$id    = '88888888';   // 换成你自己的
$key   = '88888888';
$sheng = '四川';
$url = "https://cn.apihz.cn/api/jinrong/youjia.php?"
     . "id={$id}&key={$key}&sheng=" . urlencode($sheng);
$json = file_get_contents($url);
$data = json_decode($json, true);
if ($data['code'] == 200) {
    echo "省:{$data['sheng']},调价时间:{$data['date']}\n";
    foreach ($data['data'] as $k => $zone) {
        echo "--- {$zone['jq']} ({$zone['area']}) ---\n";
        echo "92#: {$zone['92']} 元(波动 {$zone['92bd']})\n";
        echo "95#: {$zone['95']} 元(波动 {$zone['95bd']})\n";
        echo "0号柴油: {$zone['0h']} 元\n";
    }
} else {
    echo "接口错误:{$data['msg']}\n";
}

方式 B · POST(curl,更正式)

<?php
$id    = '88888888';
$key   = '88888888';
$sheng = '四川';
$ch = curl_init('https://cn.apihz.cn/api/jinrong/youjia.php');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST => true,
    CURLOPT_POSTFIELDS => http_build_query([
        'id'    => $id,
        'key'   => $key,
        'sheng'=> $sheng,
    ]),
]);
$json = curl_exec($ch);
curl_close($ch);
$data = json_decode($json, true);
// 后面解析逻辑同上

七、调用示例:Python

方式 A · GET(requests)

import requests
api_id = "88888888"
api_key = "88888888"
sheng = "四川"
url = "https://cn.apihz.cn/api/jinrong/youjia.php"
params = {
    "id": api_id,
    "key": api_key,
    "sheng": sheng,
}
resp = requests.get(url, params=params)
resp.raise_for_status()
data = resp.json()
if data["code"] == 200:
    print(f"省:{data['sheng']}|调价时间:{data['date']}")
    for k, zone in data["data"].items():
        print(f"--- {zone['jq']} ({zone.get('area','')}) ---")
        print(f"92#:{zone.get('92')} 元(波动 {zone.get('92bd')})")
        print(f"95#:{zone.get('95')} 元(波动 {zone.get('95bd')})")
        print(f"0号柴油:{zone.get('0h')} 元")
else:
    print("接口错误:", data["msg"])

方式 B · POST

resp = requests.post(url, data=params)
# 后面解析完全一致

八、几个容易踩的小坑

  1. 多价区省份:别只认 data1,凉山、攀枝花这种地方在 data2,要 for着读。
  2. null字段:部分地区不卖 98、不卖 -35 柴油,解析时用 get()??(PHP)兜底,别直接下标。
  3. 波动是相对上轮调价的差值,不是百分比,单位是元/升。

九、适用场景随想

  • 车主小程序:「加满一箱 92 比上次省几块钱」
  • 物流后台:按省份拉柴油价算干线成本
  • 财经类站点:每次调价日自动发快讯

接口本身免费 + 返回字段细到爱跑 / 乙醇 / CNG 都有,算是国内这类数据里比较省事的一个。

目录
相关文章
|
6天前
|
缓存 人工智能 安全
GPT-5.6 Terra与GPT-5.5性能实测:成本减半后的跑分对比与快速迁移指南
GPT-5.6 Terra 的定价为每百万 token 输入 2.50/输出 15。GPT-5.5 则是 5/ 30。Terra 的每一项费率,包括 $0.25/M 的缓存读取,都恰好是 GPT-5.5 的一半,因此在任何工作负载组合下,Terra 都固定 便宜 2.0x。以每天 10 万次请求、3K token 提示词计算,大约是 Terra 每天 2,000,GPT−5.5每天 4,000,即每月约 60,000对 120,000。问题在于:OpenAI 没有发布任何针对 Terra 的编码基准。那个著名的 91.9% Terminal-Bench 数字是 Sol 在 Ul
|
1天前
|
数据采集 机器学习/深度学习 人工智能
田间杂草定位与检测4200张YOLO智慧农业数据集分享
本数据集含4200张真实农田图像,YOLO格式,单类别(杂草)高质量标注,覆盖多作物、多光照、多生长阶段等复杂场景,专为智慧农业杂草检测与智能除草设备研发设计,支持YOLOv5/v8/v10等主流模型训练。
324 93
|
2天前
|
缓存 UED 开发者
Codex109天重置23次,明天还要再送一次
Codex近109天完成23次额度重置,7月14日将迎来第24次。Tibo高频响应用户反馈:优化GPT-5.6高消耗问题、补发失效福利、调整重置时间——形成“反馈→回应→修复→补偿”正向闭环,彰显以用户为中心的产品哲学。(239字)
473 11
|
6天前
|
人工智能 缓存 JSON
刚刚 GPT-5.6 发布,吊打 Claude 5 和 Grok 4.5?一手实测来啦!
GPT-5.6 刚发布,跑分号称超越 Fable 5,真的假的?附一手实测,让 3 个最强 AI 编程模型 GPT-5.6 Sol、Claude Fable 5、Grok 4.5 在 Cursor 里同时一把梭开发网页游戏,看看最新模型到底谁更能打。
327 0
|
5天前
|
存储 人工智能 JSON
Qwen 本地部署搭配 ComfyUI 生成 AI 漫剧完整实操指南(小白零基础可落地,零成本无限生成+角色一致性天花板)
2026全网最优本地漫剧流水线:零成本、离线运行、角色统一、低配(8G显卡)可跑。融合Qwen本地大模型+ComfyUI双引擎,实现剧本生成→分镜绘图→动态成片全自动,隐私安全、无审核限流,新手30分钟上手,日更无忧。(239字)