--- name: 接收短信 description: 通过 receivesms 类网站获取临时号码并抓取该号码最新一条短信(含发件人名字与内容)。触发词:接收短信、收短信、receivesms、接码、临时号码、获取短信、拿短信。 owner: 水桥 group: 水 version: "1.0" updated: "2026-03-01" --- # 接收短信 Skill > 从接码网站取号、拿最新短信,命令行完成,不打开网页。 —— 水桥 --- ## 一、负责与入口 - **负责人**:水桥(平台对接) - **触发词**:接收短信、收短信、receivesms、接码、临时号码、获取短信、拿短信、等刷新拿短信 - **数据源网站**:**receivesms.co**(英国临时号码列表与收件页,公开、免注册) --- ## 二、要获取的「网站短信」类型说明 本技能最终输出两类信息,请按需使用: | 输出项 | 含义 | 示例 | |:---|:---|:---| | **号码** | 当前使用的临时号码(来自 receivesms.co 英国号列表) | +447424907088 | | **短信内容** | 该号码收件页上**最新一条**短信的正文 | `[PUBG] code: 697881. Valid for 3 minutes.` | | **发件人名字(网站/服务名)** | 页面上显示的发送方标识,即「来自哪个网站/服务的短信」 | TRIBBU、bilibili、AIRBNB、hcloud、WhatsApp 等 | **当前脚本行为**:只输出**号码 + 最新一条短信正文**;发件人名字在网页上对应 `class="from-link"`,若你需要「只要某类网站/服务发来的短信」(如只要 bilibili、只要验证码类),可在本 Skill 下扩展脚本按发件人或关键词过滤。 **可获取的短信类型(按来源名)**:凡在 receivesms.co 该号码收件页上出现的都会被抓到「最新一条」—— 包括但不限于:验证码类(各 App/网站 OTP)、营销类、通知类;发件人显示为服务名/短号(如 TRIBBU、hcloud、+***5113)。若你要的是「自己刚发过去的那条」,请用 `--wait` 模式(见下)。 --- ## 三、整体流程(从取号到拿到短信) ``` ① 请求 receivesms.co 英国号码列表页 ↓ ② 随机选取一个临时号码(+44 开头) ↓ ③ [可选] --wait:先输出号码,等待 30~60 秒(你向该号发短信),再请求该号收件页 或无 --wait:直接请求该号收件页 ↓ ④ 解析收件页 HTML,取「最新一条」短信正文(
) ↓ ⑤ 输出:NUMBER、SMS(及 号码 | 短信 一行) ``` --- ## 四、执行方式(命令行,不打开网页) **脚本路径**(工作台内): ``` 运营中枢/scripts/receivesms_get_sms.py ``` **用法**: | 模式 | 命令 | 说明 | |:---|:---|:---| | 立即取最新一条 | `python3 receivesms_get_sms.py` | 可能拿到历史/限流旧短信 | | 等刷新后取最新 | `python3 receivesms_get_sms.py --wait` | 先出号,等 45 秒后再抓,适合「你发短信后」拿刚收到的那条 | **执行目录**: ```bash cd /Users/karuo/Documents/个人/卡若AI/运营中枢/scripts python3 receivesms_get_sms.py # 或 python3 receivesms_get_sms.py --wait ``` --- ## 五、输出格式 脚本标准输出示例: ``` NUMBER: +447476933927 SMS: [PUBG] code: 697881. Valid for 3 minutes. --- +447476933927 | [PUBG] code: 697881. Valid for 3 minutes. ``` - **NUMBER**:当前使用的临时号码(receivesms.co 英国号)。 - **SMS**:该号码在 receivesms.co 收件页上的**最新一条短信正文**;无短信时为 `(无)`。 - 最后一行:`号码 | 短信`,便于复制或管道处理。 --- ## 六、付费接码平台(SMSOnline · 推荐用于注册) ### 6.1 平台信息 - **网站**:[premium.smsonline.cloud](https://premium.smsonline.cloud) / [smsonline.io](https://smsonline.io) - **API 参考**:`运营中枢/参考资料/smsonline_付费接码平台_API参考.md` - **API Key**:`2w9hva2mzvbubw5sj3vqwkuv9ib43ku29okhwyragkx4o2kgzw7eb9oy8pjh4gc3` ### 6.2 脚本与用法 ```bash cd /Users/karuo/Documents/个人/卡若AI/运营中枢/scripts # 查看支持的国家 python3 smsonline_receive_sms.py --list-countries # 查看支持的服务(Soul、bilibili 等) python3 smsonline_receive_sms.py --list-services # 查看某国+某服务的可用号码与价格 python3 smsonline_receive_sms.py --country-id 1 --service-id 2 --products # 完整流程:取号 → 轮询收验证码(最多 2 分钟)→ 超时自动退费 python3 smsonline_receive_sms.py --country-id 1 --service-id 2 ``` ### 6.3 防扣费规则(强制) 1. 轮询 get-sms 最多 **120 秒**,超时 → 自动调 `change-status(status=4)` 取消退费。 2. 收到验证码并使用后 → 调 `change-status(status=3)` 确认完成。 3. 不重复获取同一号:先取消旧订单再取新号。 4. 首次调试加 `&test=1` 不扣费。 --- ## 七、参考资料与扩展 - **giffgaff 流程史记**:`运营中枢/参考资料/giffgaff发短信收短信_流程史记.md` - **receivesms 免费接码**:`运营中枢/参考资料/receivesms收短信_操作.md` - **SMSOnline 付费接码 API**:`运营中枢/参考资料/smsonline_付费接码平台_API参考.md` - **扩展**:若需按「发件人名字」或关键词过滤短信,可在本目录下扩展脚本。