技术博客
唐诗宋词元曲查询:国风文案/内容创作如何自动引用诗词并配图

唐诗宋词元曲查询:国风文案/内容创作如何自动引用诗词并配图

作者: 万维易源
2026-09-03
唐诗宋词元曲查询国风文案内容创作自动引用
# 唐诗宋词元曲查询:国风文案/内容创作如何自动引用诗词并配图 > 接口:唐诗宋词元曲等诗词查询(apiCode=1620)· 免费 · 请求方式 POST/GET · 返回 JSON · 适用:内容运营、国风文案/短视频团队 · 阅读约 6 分钟 ## 核心要点 - 国风文案常需「信手拈来一句诗」:用 1620-5 的 `poetId` 或精确 `title` 取到 `original` 原文可直接引用 - 配合 `poet` / `dynasty` / `note` 字段,能自动生成「【宋】苏轼 · 写景」这类署名与主题标签 - `title` 是精确匹配,写文案前建议先用 `poetId` 拉出该作者作品列表,再在本地挑名句 ## Why:让文案「有诗为证」不再靠死记 做国风海报、节气推文、品牌国潮短片,往往需要一句贴切的古诗点睛。靠人工背诗库既慢又容易记错出处。用这套接口,输入诗人或诗名就能拿到权威原文与署名,自动化地嵌进模板,效率与准确度都上来了。 ## What:创作场景涉及的接口 | 能力 | 接入点 | 关键出参 | |------|--------|---------| | 按诗人取作品 | 1620-5(`poetId`) | `title` / `contentlist[].original` / `note` | | 按诗名取原文 | 1620-5(`title`,精确) | `original` / `poet` / `dynasty` | | 诗人署名 | 1620-4(`poet`) | `poet` / `dynasty` / `biography` | | 计费 | 免费(有使用档次限制) | — | ## How:自动引用诗词的工作流 ### 步骤 1 · 选诗人,拉出作品候选 用 `poetId`(或先 1620-4 查 `poet` 拿 `poetId`)调 1620-5,翻页拉全量(见分页篇),在本地建「名句候选池」。 ### 步骤 2 · 按主题挑诗,组装文案 用 `note` 标签(如「写景」「感叹」「哲理」)在候选池里筛主题,取 `original` 第一句做标题金句,附 `poet`/`dynasty` 署名。 ### 步骤 3 · 生成模板 **Python(取苏轼写景名句并组装)** ```python import requests APP_KEY = "YOUR_APPKEY" H = {"content-type": "application/x-www-form-urlencoded"} def call(path, **params): r = requests.post(f"https://route.showapi.com/{path}", params={"appKey": APP_KEY, **params}, headers=H, timeout=10) body = r.json().get("showapi_res_body", {}) if body.get("ret_code") != "0": raise RuntimeError(body.get("remark")) return body poems = call("1620-5", poetId="5b1e3644cbf69480cb8e81b7", page=1)["poemInfo"] for p in poems: tags = [t for t in p.get("note", "").split(",") if t] if "写景" in tags: # 按主题挑 first_line = p["contentlist"][0]["original"].split("。")[0] print(f"【{p['dynasty']}】{p['poet']}《{p['title']}》:{first_line}") ``` **cURL(按诗名取原文)** ```bash curl -X POST "https://route.showapi.com/1620-5?appKey=YOUR_APPKEY" \ -H "content-type: application/x-www-form-urlencoded" \ -d "title=%E5%89%8D%E8%B5%A4%E5%A3%81%E8%B5%8B&page=1" ``` **Node.js(fetch,组装署名)** ```javascript const APP_KEY = "YOUR_APPKEY"; const H = { "content-type": "application/x-www-form-urlencoded" }; const body = (await (await fetch(`https://route.showapi.com/1620-5?appKey=${APP_KEY}`, { method: "POST", headers: H, body: new URLSearchParams({ title: "前赤壁赋", page: 1 }), })).json()).showapi_res_body; const p = body.poemInfo[0]; console.log(`【${p.dynasty}】${p.poet}《${p.title}》\n${p.contentlist[0].original}`); ``` ## 返回示例与解析 以 `title=前赤壁赋`: ```json { "showapi_res_body": { "ret_code": "0", "poemInfo": [ { "title": "前赤壁赋", "dynasty": "宋代", "poet": "苏轼", "note": "辞赋精选,高中文言文,古文观止,写景,饮酒,感叹,哲理", "contentlist": [ { "original": "壬(rén)戌(xū)之秋,七月既望……" } ] } ] } } ``` 组装文案示例:`【宋代】苏轼《前赤壁赋》:"壬戌之秋,七月既望……"` —— 署名与朝代自动带出,无需手敲。 ## 进阶 / 边界 - **title 精确匹配**:直接按诗名取原文时,`title` 必须精确(见《title 名称查询为什么不支持模糊匹配》);不确定诗名时改用 `poetId` 拉全量再本地挑。 - **名句截取**:`original` 是整段,取金句建议按「。」分句取首句;注意原文含注音「字(拼音)」,发布前可去除拼音只留汉字。 - **配图非接口能力**:本接口只提供文本,配图需你自行准备或用图像生成服务,接口不返回图片。 - **缓存候选池**:诗人作品相对稳定,拉全量后本地缓存,文案生成时直接读缓存,避免重复消耗免费档位。 ## FAQ **Q1:能不能「给我一句写春天的诗」这种语义搜索?** 不能。接口是精确/条件查询,无语义搜索。可先拉某诗人或某朝代作品,再在本地按 `note` 标签(如「写景」)或关键词筛选近似主题。 **Q2:原文里的拼音注音要保留吗?** 看用途。教学卡片可保留注音辅助认读;对外发布的国风文案通常去除拼音只留汉字,用正则 `字(拼音)` → `字` 处理即可。 **Q3:署名朝代信息准确吗?** 来自数据源的 `dynasty` / `poet` 字段,可作为署名依据;正式商用发布建议再核对一次出处。 **Q4:接口能直接出图吗?** 不能,接口仅返回文本(原文/译文/注释/标签)。配图需另行准备或调用图像生成服务。 ## 相关能力 / 下一步阅读 - [唐诗宋词元曲查询:title 名称查询为什么不支持模糊匹配?正确用法与避坑](https://www.showapi.com/guides/poem-title-exact-1620) — 按诗名取原文的约束 - [唐诗宋词元曲查询:免费也有档次限制,如何用本地缓存避免触发限流?](https://www.showapi.com/guides/poem-rate-limit-cache-1620) — 候选池缓存 - **本系列共 12 篇**:查看[唐诗宋词元曲查询指南总目录](https://www.showapi.com/guides/poem-guides-1620)