Skills meituan-coupon-auto
自动领取美团优惠券。触发词: 领取美团优惠券, 运行美团优惠券技能, 设置每日自动领取, 查看优惠券, meituan coupon, 美团领券
install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/ayue-oss/meituan-coupon-auto" ~/.claude/skills/clawdbot-skills-meituan-coupon-auto && rm -rf "$T"
manifest:
skills/ayue-oss/meituan-coupon-auto/SKILL.mdsource content
美团优惠券自动领取
自动浏览器领取美团全部优惠券,两次点击解锁券明细弹窗,直接读取张数/总金额/分类明细。
验证数据
- 69张券,800元(2026-03-16 实测)
- 两次点击策略:第1次触发领取→页面跳转,第2次触发明细弹窗
- 覆盖:外卖神券 + 闪购券 + 堂食券 + 玩乐变美 + 生活服务
触发词
- "领取美团优惠券" / "美团领券" — 立即领取
- "运行美团优惠券技能" / "meituan coupon" — 运行技能
- "设置每日自动领取" — 设置定时任务
- "查看优惠券" — 查看今日领取记录
执行流程(5步)
步骤1:启动浏览器
browser(action=status, profile=openclaw) # 未运行则先 start browser(action=start, profile=openclaw)
步骤2:打开领券页(不等完整加载)
browser(action=open, profile=openclaw, url="https://click.meituan.com/t?t=1&c=2&p=mcB9ObxznZMn")
步骤3:等待页面就绪 + 第一次点击(触发领取)
等待2秒后执行第一次点击:
browser(action=act, kind=wait, timeMs=2000) browser(action=act, kind=evaluate, fn="document.querySelector('.gundam-view.receive-btn, .receive-btn, [class*=\"receive-btn\"]')?.click()")
步骤4:等待页面跳转 + 第二次点击(触发明细弹窗)
等待2秒(等待页面跳转至 market.waimai.meituan.com),再点击一次触发明细弹窗:
browser(action=act, kind=wait, timeMs=2000) browser(action=act, kind=evaluate, fn="document.querySelector('.gundam-view.receive-btn, .receive-btn, [class*=\"receive-btn\"]')?.click()")
步骤5:等待明细出现 + 读取快照 + 解析 + 关闭
browser(action=act, kind=wait, timeMs=2000) browser(action=snapshot, profile=openclaw, compact=true) → 在快照中查找 "共X张券" / "总计Y元已到账" / 各优惠券明细 browser(action=stop, profile=openclaw)
快照解析规则
领取成功后,快照顶部会出现明细弹窗,格式如下:
共 69 张券, 总计 800 元已到账 ¥17 满58可用 今日有效 外卖大额神券 ¥12 满34可用 今日有效 外卖神券 ¥5 满25可用 今日有效 闪购零食神券 ...
解析逻辑(用 JS 或 regex 均可):
// 从 snapshot text 提取汇总 const summary = text.match(/共\s*(\d+)\s*张券.*?总计\s*(\d+)\s*元已到账/); // coupons = summary[1], totalValue = summary[2] // 提取每张券明细(格式:¥金额 满X可用 有效期描述 类型名称) const itemRe = /¥\s*(\d+)\s+(满\d+可用\s+)?(今日有效|有效期至[\d.]+|明日[\d:]+截止)\s+(.+)/g; let m, items = []; while ((m = itemRe.exec(text)) !== null) { items.push({ value: parseInt(m[1]), condition: m[2]?.trim() || '', validity: m[3], name: m[4].trim() }); }
输出格式(最终回复用户)
🛵 美团优惠券领取成功 📊 共 69 张券,总计 ¥800 已到账 🛵 外卖神券(今日有效) ¥17 满58可用 · 外卖大额神券 ¥15 满38可用 · 外卖大额神券 ¥12 满34可用 · 外卖神券 🛒 闪购券(今日有效) ¥35 满99可用 · 松鼠坚果 ¥29 满109可用 · 闪购酒饮 ... (其余汇总) 🍽️ 堂食/生活(至本周) ¥30 满300可用 · 堂食膨胀神券 ... ⏱ 2026-03-16 13:18 | 今日有效券请尽快使用
状态检测
| 状态 | 识别关键词 | 处理 |
|---|---|---|
| ✅ 成功 | | 解析明细输出 |
| ⚠️ 需打开App | | 执行第二次点击 |
| 🔐 需登录 | / | 提示手动登录后重试 |
| ✋ 已领取 | / | 回复"今日已领过" |
| 🔥 太火爆 | | 提示30分钟后重试 |
选择器降级顺序
| 优先级 | 选择器 | 说明 |
|---|---|---|
| 1 | | 精确class(常用) |
| 2 | | 模糊class |
| 3 | | 更宽松 |
| 4 | | 文本降级 |
定时任务(每天 10:00 & 13:18)
{ "name": "美团每日领券", "schedule": { "kind": "cron", "expr": "18 13 * * *", "tz": "Asia/Shanghai" }, "payload": { "kind": "systemEvent", "text": "⏰ 定时提醒:领取美团优惠券" }, "sessionTarget": "main", "delivery": { "mode": "none" } }
⚠️ 必须使用
+sessionTarget: "main"。 使用payload.kind: "systemEvent"+isolated在无外部渠道(Telegram/Discord)时会报错:announceChannel is required (no configured channels detected)
领券页面地址
https://click.meituan.com/t?t=1&c=2&p=mcB9ObxznZMn
覆盖:外卖神券 · 闪购券 · 堂食券 · 玩乐变美 · 生活服务 · 医疗 · 超市
📋 实测记录(2026-03-16):
- 两次点击策略验证:第1次→页面跳转至 market.waimai.meituan.com,第2次→明细弹窗出现
- 成功读取:69张券 / ¥800 / 含外卖、闪购、堂食、玩乐变美等分类
- 每次点击后 wait 2000ms 确保页面稳定
- compact snapshot 可清晰读取券明细列表