惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
Apple Machine Learning Research
Apple Machine Learning Research
月光博客
月光博客
Vercel News
Vercel News
Recent Announcements
Recent Announcements
B
Blog RSS Feed
Y
Y Combinator Blog
M
MIT News - Artificial intelligence
MongoDB | Blog
MongoDB | Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
雷峰网
雷峰网
D
Docker
Jina AI
Jina AI
IT之家
IT之家
人人都是产品经理
人人都是产品经理
L
LangChain Blog
G
Google Developers Blog
Google DeepMind News
Google DeepMind News
MyScale Blog
MyScale Blog
博客园 - 叶小钗
The GitHub Blog
The GitHub Blog
The Cloudflare Blog
A
About on SuperTechFans
Hugging Face - Blog
Hugging Face - Blog

皓子的小站

网站字体应用之坑——font-family 篇 糟糕的 meta name="theme-color" How to Automatically Track Newly Supported ESLint Rules in Oxlint How to Gradually Migrate from ESLint to Oxlint (Without Breaking Everything) 静态资源预压缩:零运行时开销,极致节省带宽 CVE-2025-70886 Proof of Concept (PoC) | A Script to Crash Halo CMS Comment Backend 自定义网页鼠标指针——一段曲折的旅程 CVE-2025-70886 漏洞复现/PoC | 一个脚本让 Halo CMS 评论后台瘫痪 2025 年终总结 & 博客两周年 老用户专享!已有 Halo 专业版授权可免费升级商业版 自动追踪 Oxlint 对 ESLint 规则的新增支持 Halo 贡献者证书与实体周边盲盒开箱 博客评论系统指南 CDN 回源跟随配置导致登录异常问题排查 SCDN 免费赞助计划:助力高质量博客&博客圈 锐捷校园网:网络共享与带宽叠加方案(哈理工案例) ESLint 到 Oxlint 渐进式迁移快速上手指南 Fixing Vite Breaking Inline JS & CSS in Thymeleaf Templates 解决 Vite 破坏 Thymeleaf 模板内联 JS & CSS 的方法 我的博客,为什么是月更? 博客俱乐部一周年纪念品开箱 网站字体加载之坑——format 篇 经历 1000000000 次 DDoS 请求攻击后,我总结了三条经验 题解分享:[AtCoder Beginner Contest 414 E] Count A%B=C 题解分享:[蓝桥杯 2025 国 Python A] 杨辉三角 P12876 FiF口语训练破解刷分教程(适用于 Windows) 不要与蠢人辩论 小心网络地雷·续篇 当心网络组织“开往”·续篇 当心网络组织“开往”
基于 OneBot API 的简易&#243...
HowieHz · 2024-12-23 · via 皓子的小站

本文介绍了一个基于 OneBot API 的简易异步 QQ 群批量发消息脚本。

亮点

  • 高效异步执行
  • 自带进度条
  • 支持随机选择信息
  • 易于使用
  • 轻量 - 仅引用两个第三方库(一个用于异步发送请求,另一个用于显示进度条)

注意:为适配自动化框架,程序将在运行结束 30 秒后自动退出。

如何使用

部署 OneBot API 软件

使用这个脚本前要部署完成实现了 OneBot API 的软件

一种 OneBot API 的实现软件:NapCat | NapCatQQ | 开始安装

运行脚本前请记得创建并开启 http 服务器,开启 0.0.0.0:3000 作为服务器地址(http://localhost:3000 地址是默认的地址,如果你开启的是 0.0.0.0:3000,那么下面示例配置文件的 onebot_api_http_server 这一项无需修改)

在 NapCat 创建并开启 http 服务器的教程:#1

填写配置文件

需要在脚本同目录创建 config.json 作为配置文件

onebot_api_http_server:指的是 http 服务器 地址
group_id_list:指的是你要发送信息的群
messages:指的是从其中随机选一个消息发送
(注意:"messages": [ "" ],将不会发出任何消息。如果设置为 "messages": [ "打卡", "" ] 那将会有 50% 的概率发送打卡消息)
(编辑配置文件的时候请注意在 JSON 中,​尾随逗号(即在最后一个元素后添加的逗号)是不被允许的。建议在编辑完之后使用在线 JSON 检查工具检查正确性)

以下是一个示例配置文件,请将 onebot_api_http_servergroup_id_list 改为实际的地址和实际的目标群号。

{
    "onebot_api_http_server": "http://localhost:3000",
    "group_id_list": [
        "123123125",
        "123123124",
        "123123123"
    ],
    "messages": [
        "冒泡睡觉🌙",
        "打卡睡觉🌙",
        "群友晚安🌙",
        "碎觉时间到🌙"
    ]
}

运行程序

从二进制文件运行(一键启动)

下载地址:软件发布页

点击 qqbot-auto-send-message-to-group.exe 下载即可

从源代码运行

CONTRIBUTING

代码可能的改进点

  1. 代码中抛弃了 await response.text() 的返回值,因为在 NapCat 实现中,发现返回值为 {"status":"failed","retcode":200,"data":null,"message":"Timeout: NTEvent serviceAndMethod:NodeIKernelMsgService/sendMsg ListenerName:NodeIKernelMsgListener/onMsgInfoListUpdate EventRet:\n{\n \"result\": 0,\n \"errMsg\": \"\"\n}\n","wording":"Timeout: NTEvent serviceAndMethod:NodeIKernelMsgService/sendMsg ListenerName:NodeIKernelMsgListener/onMsgInfoListUpdate EventRet:\n{\n \"result\": 0,\n \"errMsg\": \"\"\n}\n","echo":null} 而不是类似 {"status":"ok","retcode":0,"data":{"message_id":409173648},"message":"","wording":"","echo":null} 但是消息依然是发送成功的,所以我选择忽略此返回值。
  2. 无法设置每日自动某时刻发送消息。此处我选择通过外部软件进行定时任务设置,如 Windows 的“任务计划程序”。

常见问题

发送消息成功实际没有发送:#1