公众号/自媒体方案:用笑话大全做"每日段子"自动推送
# 公众号/自媒体方案:用笑话大全做"每日段子"自动推送
> 接口 341-5 · 免费 · JSON · 适用人群:自媒体运营、内容团队 · 阅读时间:约 6 分钟
## 核心要点
- 链路:定时任务拉取 → 格式化 `text` → 推送至公众号/社群;后端持有 AppKey。
- 按天缓存一条,避开高频调用触发使用档位限制。
- 内容整理自互联网,推送时注意来源与适宜性(见[内容合规](https://www.showapi.com/guides/joke-api-content-tips-341))。
## Why
自媒体号最需要的就是稳定的日更素材。"每日段子"是低成本、高互动的内容形态:用笑话大全在每天固定时间自动拉一条、排版后推到公众号或社群,既保持更新节奏又省去人工找料。本篇给出可落地的定时推送链路。
## What
| 项 | 说明 |
|----|------|
| 触发 | 定时任务(如每天 08:00) |
| 取数 | 后端调用 341-5,缓存当天一条 |
| 推送 | 公众号/社群推送(以你所用平台 API 为准) |
| 鉴权 | AppKey 仅在后端,不暴露 |
## How
### 步骤 1:定时拉取并缓存(Python 示例)
```python
import requests, redis, datetime, schedule
APP_KEY = "YOUR_APPKEY"
r = redis.Redis(host="localhost", port=6379, db=0)
def fetch_today_joke():
today = datetime.date.today().isoformat()
cached = r.get(f"wechat_joke:{today}")
if cached:
return cached.decode("utf-8")
resp = requests.post(
"https://route.showapi.com/341-5",
params={"appKey": APP_KEY},
headers={"content-type": "application/x-www-form-urlencoded"},
timeout=20,
).json()
body = resp.get("showapi_res_body", {})
text = body["text"] if body.get("ret_code") == 0 else "今天暂无段子~"
r.setex(f"wechat_joke:{today}", 86400, text)
return text
# 每天 08:00 取数(实际推送请用对应平台 API)
schedule.every().day.at("08:00").do(lambda: fetch_today_joke())
```
### 步骤 2:格式化并推送
把 `text` 包成图文/纯文本,按你所用平台(公众号/社群机器人)的推送接口发出。推送频率与内容适宜性自行把控。
### 步骤 3:失败兜底
接口异常或触档位限制时,用兜底文案,避免当天推送空白。
## 返回示例与解析
返回结构见[返回字段全解](https://www.showapi.com/guides/joke-api-response-fields-341);推送只用 `text`。
## 进阶 / 边界
- **AppKey 后端保管**:推送脚本在服务端运行,AppKey 走环境变量/密钥管理。
- **频率守档位**:每天一条最稳;多次"换一条"会计入使用档位限制(见[缓存与档位](https://www.showapi.com/guides/joke-api-cache-tier-341))。
- **内容合规**:内容整理自互联网,推送前注意来源与适宜性(见[内容合规](https://www.showapi.com/guides/joke-api-content-tips-341)),本文不给法律结论。
## FAQ
**Q1:能每天自动发不同段子吗?**
能。定时任务每天拉一条即可;想更多条需评估档位限制。
**Q2:AppKey 放推送脚本安全吗?**
放服务端环境变量即可,别进前端或公开仓库。
**Q3:推送失败会怎样?**
建议失败兜底文案 + 重试/告警,避免当天空白。
**Q4:内容能改成原创语气吗?**
可加开场白/结尾,但正文源自互联网,不建议宣称原创。
**Q5:档位限制影响推送吗?**
高频调用会触发,按天一条最稳妥;具体以官方说明为准。
## 相关能力 / 下一步阅读
- [免费接口也要讲边界:笑话大全缓存策略与档位限制应对](https://www.showapi.com/guides/joke-api-cache-tier-341)
- [用笑话内容做引流:笑话大全合规与阅读体验注意事项](https://www.showapi.com/guides/joke-api-content-tips-341)
- [博客/论坛集成笑话大全:用"每日一笑"降低跳出率](https://www.showapi.com/guides/joke-api-blog-daily-341)
- **本系列共 10 篇**:查看[笑话大全 API 指南总目录](https://www.showapi.com/guides/joke-api-guides-341)