技术博客
5 分钟接入黄历运势:从注册到第一条黄历数据

5 分钟接入黄历运势:从注册到第一条黄历数据

作者: 万维易源
2026-08-27
黄历运势API接入Python示例免费接口
# 5 分钟接入黄历运势:从注册到第一条黄历数据 > 接口 黄历运势(apiCode=856) · 免费服务 · 请求方式 POST/GET · 返回格式 JSON · 适用人群:新注册用户、初级开发者 · 阅读时间约 5 分钟 ## TL;DR - 黄历运势是 **免费** 接口,黄历 / 吉神凶煞 / 吉时 三个接入点共用一个 AppKey。 - 唯一必填业务参数是 `ymd`(公历日期,格式 `yyyyMMdd`,如 `20260211`)。 - 业务数据包裹在 `showapi_res_body` 中,`ret_code = 0` 表示查询成功。 ## Why:为什么值得花 5 分钟接一下 无论你做 **传统文化 App、婚庆/择日工具、日历提醒、生肖运势卡片**,还是想在网站/小程序里给日期加一行「宜忌」,黄历运势都能用一次调用把「农历、干支、宜、忌、冲煞、值神、吉凶神、十二时辰吉凶」等数据直接拿到,省去自己维护万年历与神煞规则的麻烦。它是 ShowAPI 官方自营的免费服务,无需商务洽谈即可开始。 ## What:接口速览 | 项目 | 内容 | |------|------| | 接口名 | 黄历运势 | | apiCode | 856 | | 服务商 | 昆明秀派科技有限公司(易源官方自营) | | 所属分类 | 生活服务 | | 计费 | 免费服务 | | 接入点 | 黄历(856-2)、吉神凶煞(856-4)、吉时(856-3) | | 请求方式 | POST / GET | | 返回格式 | JSON | | 鉴权 | AppKey(query 参数 `appKey`) | | 必填参数 | `ymd`(公历日期,格式 `yyyyMMdd`) | | 更新频率 | 每年 1 月 1 日—1 月 3 日早上 9 点更新一次 | | 查询范围 | 1901-01-01 起至当前年份 | | 集成能力 | MCP 服务、OpenAPI 3.0 文档(接口级,覆盖全部接入点) | > 接口详情:[黄历运势(apiCode=856)](https://www.showapi.com/apiGateway/view/856) ## How:三步跑通第一条数据 ### 步骤 1:注册并获取 AppKey 1. 打开 [ShowAPI 控制台 · 我的应用](https://www.showapi.com/console#/myApp),注册/登录后创建一个应用,拿到 `appKey`。 2. 黄历运势为免费服务,无需单独购买套餐即可调用(调用仍占用账户的按次调用次数,详见 [缓存策略](https://www.showapi.com/guides/huangli-cache-cost-856))。 ### 步骤 2:第一次调用(以「黄历」接入点 856-2 为例) **Python(requests)** ```python import requests url = "https://route.showapi.com/856-2" params = {"appKey": "YOUR_APPKEY", "ymd": "20260211"} # ymd 为公历日期 yyyyMMdd try: resp = requests.get(url, params=params, timeout=10) data = resp.json() except Exception as e: print("请求异常:", e) raise body = data.get("showapi_res_body", {}) if body.get("ret_code") == 0: print("公历:", body.get("gongli")) print("农历:", body.get("nongli")) print("宜:", body.get("yi")) print("忌:", body.get("ji")) print("冲煞:", body.get("chongsha")) else: print("查询失败:", body.get("msg")) ``` **cURL** ```bash curl "https://route.showapi.com/856-2?appKey=YOUR_APPKEY&ymd=20260211" ``` **Node.js(fetch)** ```js const url = "https://route.showapi.com/856-2?appKey=YOUR_APPKEY&ymd=20260211"; const resp = await fetch(url, { method: "GET" }); const data = await resp.json(); const body = data.showapi_res_body || {}; if (body.ret_code === 0) { console.log("公历:", body.gongli, "| 农历:", body.nongli); console.log("宜:", body.yi, "| 忌:", body.ji); } else { console.log("查询失败:", body.msg); } ``` > 把 `YOUR_APPKEY` 替换成你的真实 AppKey 即可运行。吉时接入点用 `856-3`、吉神凶煞用 `856-4`,参数完全一致。 ### 步骤 3:解析返回 返回结构一律是「系统级字段 + `showapi_res_body` 业务包」: ```json { "showapi_res_code": 0, "showapi_res_body": { "ret_code": 0, "gongli": "公元 2025年2月11日 星期二", "nongli": "二零二五年正月(大)十四", "yi": "动土 修造 装修 拆卸 出行", "ji": "祈福 安葬", "chongsha": "冲鸡煞西 正冲癸酉(1933 1993)", "msg": "查询成功" } } ``` 判断成功只看 `showapi_res_body.ret_code == 0`;非 0 时按 `msg` 排查(常见是日期格式/范围问题,见 [错误码排查](https://www.showapi.com/guides/huangli-error-codes-856))。 ## 返回示例(黄历接入点 856-2) ```json { "showapi_res_code": 0, "showapi_res_body": { "ret_code": 0, "nongli": "二零二五年正月(大)十四", "zhishen": "玉堂(黄道日)", "jieqi24": "2月3日立春 2月18日雨水", "nayin": "[年]壁上土 [月]霹雷火 [日]城墙土", "tszf": "占门厕外正南", "shengxiao": "属鼠", "rulueli": "2460717.5", "xsyj": "岁刑 伐日 九丑 月刑 天罡 死神 天吏 天贼 致死", "xingzuo": "摩羯座", "ganzhi": "庚子年 戊子月 己卯日", "dizhi": "今日与羊、猪半合,与狗六合,较为吉祥;与鸡相冲,与龙相害,与鼠相刑。", "pzbj": "己不破券二比并亡 卯不穿井水泉不香", "zhiri": "平执位(凶)", "msg": "查询成功", "gongli": "公元 2025年2月11日 星期二", "jsyq": "天恩 神在 五合 民日 天德 玉堂 不将", "ji": "祈福 安葬", "jieri": "元旦", "qixiang": "今日二九第2天 进九第11天", "chongsha": "冲鸡煞西 正冲癸酉(1933 1993)", "yi": "动土 修造 装修 拆卸 出行", "wxcy": "" } } ``` 完整字段说明见 [黄历运势返回字段全解](https://www.showapi.com/guides/huangli-response-fields-856)。 ## FAQ **Q1:黄历运势真的免费吗?会不会有隐藏收费?** A:是免费服务(官方标注「免费服务」)。调用会占用账户的按次调用次数;`ret_code=0` 时扣除次数,非 0 失败不扣。具体档位以你的账户套餐为准。 **Q2:ymd 支持农历或「今天」这种写法吗?** A:不支持。`ymd` 只接受公历日期、格式固定为 `yyyyMMdd`(如 `20260211`)。要查「今天」,由你的程序先取当天公历日期再传入。 **Q3:能查未来的日期吗?比如明年?** A:接口支持 1901-01-01 起至**当前年份**的日期。早于 1901-01-01 或晚于当前年份的日期不在支持范围内,可能返回失败。 **Q4:三个接入点要申请三次吗?** A:不用。一个 AppKey 即可调用全部接入点,靠接口地址里的 `856-2 / 856-3 / 856-4` 区分。 **Q5:POST 和 GET 有什么区别?** A:业务结果一致,按你的后端习惯选。示例里用 GET(参数放 URL),生产环境也可用 POST(参数放 body,`content-type: application/x-www-form-urlencoded`)。 ## 相关能力 / 下一步阅读 - [黄历运势返回字段全解:黄历/吉神凶煞/吉时字段一文读懂](https://www.showapi.com/guides/huangli-response-fields-856) —— 建立字段认知,避免猜字段。 - [黄历查询接入点详解:宜忌、冲煞、值神怎么用](https://www.showapi.com/guides/huangli-day-almanac-856) —— 深入 856-2 每个字段的业务含义。 - [黄历运势错误码与 ret_code 排查:日期格式/范围边界](https://www.showapi.com/guides/huangli-error-codes-856) —— 调不通时先来这里。 - **本系列共 11 篇**:查看[黄历运势指南总目录](https://www.showapi.com/guides/huangli-guides-856)