alloevil/weibo-chat-auto
alloevil/weibo-chat-auto has 36 GitHub stars and 7 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-09 13:48 UTC. Last push 2026-11-01.
微博群聊消息自动归档 · 原生桌面应用(应用内扫码登录)+ 本地可视化查看器,含 AI 每日摘要与 Agentic 问答
可以做什么
- 🗂 Multi-group support (configured in config.json) - ⚡ Live sync (opt-in, off by default): new messages appear automatically
- 🖥 Native desktop app (in-app QR-code login) - 💬 Send messages to the group: text / emoticons / images
- 🍪 Automatic cookie persistence + session keep-alive - 🎨 Archive / dark / refined classic QQ / modern QQ themes and more
- 📡 Full history via paginated API fetch - 🔀 Searchable group picker + 📅 date navigation + per-group reading memory
实测星标增长
- 24小时
- 0
- 7天
- 更新延迟
- 15天
- 更新延迟
- 1个月
- 更新延迟
各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。
README.zh-CN.md
原文
English | 简体中文
把微博群聊变成可查找、可连续阅读的本地档案馆 — 原生桌面应用(应用内扫码登录,无需手动配 Cookie)或本地查看器,支持多群、定时归档、按天导出、组合检索与跨日上下文,内置 AI 每日摘要与 Agentic 问答。
🎬 演示

演示中的用户名、群名与头像均为脱敏示例。此为历史版本演示,不代表 v1.31.0 的当前界面。
🆕 v1.31.0:更清楚地阅读和核对群聊
- 精简主栏:群、搜索、日期和“更多”集中排列;桌面的同步归档、阅读筛选、AI 助读使用快捷图标,悬浮或键盘聚焦可见说明。手机把这三项放进文字菜单,设置、皮肤和代码日志外观也在“更多”里。
- 上次成功同步时间:桌面在同步图标说明中显示,手机在菜单项下显示;成功完成后保存,刷新和重启可恢复,失败不更新时间。只记录本机手动“同步归档”,不使用归档文件修改时间,也不代表系统定时归档或实时轮询的时间。
- 引用原文默认完整展开:聊天正文、上下文及反向线索都不再默认折叠长引用;需要时可主动收起,再展开。来源往返保留上下文中主动收起的状态。
- 引用姓名更自然:匹配到唯一发送人时直接显示彩色“姓名:”,不再附问号或“未核实”提示;多条候选属于同一个稳定用户 ID 时也显示姓名。色号优先按用户 ID 固定,明暗主题调整明度;有限色板可能重色,颜色不是身份依据。
- 阅读层级精修:引用使用低强调底色,“核对原文”保留追溯入口;长消息限制行宽,短消息自然收缩,正文保持左对齐,附件不跟随文字一起缩窄。
升级后可这样体验:桌面悬浮同步图标查看上次成功时间;手机打开“更多”。通过 更多 → 设置与皮肤 → 皮肤 选择“QQ 2012 · 经典精修”或“现代 QQ · 简洁蓝白”。默认档案馆及其他旧皮肤保留。
来源边界:姓名仍来自已加载归档的匹配,不保证已确认微博的真实回复关系。主列表只使用当日已加载消息;跨日、原文缺失、文本不匹配或不同发送人时仍可能显示“发送人待确认”,可点“核对原文”查看候选与原因。不会根据回复人或 @提及猜作者。
已知限制:快速把桌面窗口缩到手机宽度时,快捷按钮焦点可能丢失;本版未修复该问题。浏览器验证使用合成数据,不等于 macOS 实机、物理手机或真实模型验收。完整更新见 v1.31.0 发布说明。
组合检索与来源往返
- 组合检索:在当前群组合发言人、含首尾的归档日期范围与正文多个词;所有词同时命中,不限顺序和间隔,不区分大小写。结果按归档日期与消息 ID 去重,并可继续加载。
- 从成员列表中找人:先输入昵称片段缩小候选,再明确选择成员;同名用户按稳定 ID 区分。输入候选词不会自动选人或发起消息搜索。
- 跨午夜阅读与引用核对:上下文按需补充相邻有归档日,焦点前后各最多 10 条;在已加载范围中查找引用原文候选和反向引用线索,同文多来源明确提示歧义。
- 核对后返回,不丢进度:查看原文后返回搜索或 AI 回答,恢复已加载结果、条件、答案和位置,不重复搜索或调用 AI;正反向引用候选也可返回原上下文。
- 手机与键盘操作:手机明确点击“查找”成功后收起条件区、进入结果;改善中文组字事件处理,区分“继续读取”与“失败重试”,保持键盘焦点和用户新操作。
- AI 检索候选改进:限制相同原文重复挤占,并在既有预算内保护原问题中的精确链接、域名和编号线索,不新增模型调用或向量库。
试一次:选群 → 搜索范围切到“组合检索” → 可选成员和归档日期 → 正文输入 部署 回滚 → 点击“查找” → “回原文” → “返回搜索结果”。只想按日期或成员查找,也可留空正文。
边界:普通搜索仍按完整文字片段匹配正文或昵称,空格不表示多词 AND;阅读筛选不会自动变成搜索条件。引用的文本匹配只是候选,不确认回复关系;上下文仅按需读取前后各一份邻日归档,不扫描全部历史。没有稳定成员 ID 的记录仍可按正文/日期搜索,但不按同名猜测身份。
返回状态仅保存在当前页面,不跨刷新或切群保留。新功能已通过合成数据回归,未验证真实输入法、物理手机或真实模型回答质量;无词面交集的语义问题仍可能漏检。详见 v1.29.0 发布说明 与 检索对照及限制。
✨ 功能
| 归档 | 查看器 |
|---|---|
🗂 多群支持(config.json 配置) |
⚡ 实时同步(可开关,默认关闭):新消息自动出现 |
| 🖥 原生桌面应用(应用内扫码登录) | 💬 群内发言:文字 / 表情 / 图片 |
| 🍪 Cookie 自动保持登录 + 会话保活 | 🎨 档案馆 / 深色 / QQ 经典精修 / 现代 QQ 等主题 |
| 📡 API 分页拉取全部历史 | 🔀 可搜索群选择器 + 📅 日期导航 + 每群阅读位置记忆 |
| ➕ 增量归档(断点续传;分页被中断时落盘续传游标并以非 0 退出码结束,不静默"成功") | 🔍 当前日 / 全部日期搜索 + 成员、日期、正文组合检索 |
| 📆 按日期导出 JSON | 📊 统计面板(日活 / 排行 / 时段 / 词频) |
| ⏰ 定时任务 + 手动 Sync Now | 🧹 红包 / 噪声消息过滤 |
| 🎯 跨日时间邻域,核对原文后返回搜索 / AI / 原上下文 | |
| 💬 引用全文默认展开、姓名固定配色、按需核对来源;@提及高亮 | |
| 🤖 AI 每日摘要 + Agentic Q&A 问答 | |
| 🖼 图片代理(绕过防盗链)、视频链接、分享卡片 | |
🔔 桌面通知(提到我 / 关键词)+ @我 筛选 |
🚀 快速开始
🖥 下载应用(推荐,macOS Apple Silicon)
- 从 最新 Release 下载
weibo-chat_*_aarch64.app.zip并解压。 - 首次打开:应用暂未签名,直接双击会被 macOS Gatekeeper 拦截。右键点击 .app → 打开 → 打开(只需一次)。
- 打开“更多 → 设置与皮肤”,点击登录并用微博 App 扫码,在设置的“归档群聊”里勾选要归档的群。
升级已有应用:退出旧应用,下载并解压新包,替换旧 .app 后重新打开;不要删除本地归档和配置。网页版在工作区无待处理改动时运行 git pull --ff-only && npm ci,重启查看器并刷新页面。
⚠️ 目前仅支持 Apple Silicon(M1/M2/M3/M4),暂无 Intel 与 Windows/Linux 构建。应用未签名/未公证(没有付费开发者账号),所以需要右键打开。其他平台请用下面的网页版。
🌐 网页版(macOS / Linux / WSL / Windows Git Bash)
git clone https://github.com/alloevil/weibo-chat-auto.git
cd weibo-chat-auto
npm run setup # 首次:安装 + 配置 + 扫码登录
npm run view # 之后:启动查看器 → http://localhost:3456
🛠 从源码编译桌面应用(开发者)
git clone https://github.com/alloevil/weibo-chat-auto.git
cd weibo-chat-auto
npm run desktop
一条命令完成:检测环境 → 安装依赖(Rust/Bun/npm)→ 编译 → 启动。首次编译约 10 分钟。
桌面应用架构
- Tauri v2 原生窗口 + WKWebView
- 运行资源:Bun 编译查看器服务和归档/索引辅助程序,应用显式携带
viewer.html及浏览器模块。下载版运行无需 Node 或 Bun,归档仍需安装 Chrome。 - 本地数据:macOS 安装包将配置、Cookie、归档和缓存放在
~/Library/Application Support/com.alloevil.weibo-chat/,不写入.app。源码网页版仍使用仓库内数据,本版不自动迁移这些数据。 - 登录:Rust 打开 WebView → 扫码 →
cookies_for_url()提取 HttpOnly Cookie → 自动保存 - IPC:WKWebView 不注入 Tauri IPC,改用 HTTP 信号中转
- 图片:微博 CDN 检查 Referer,本地
/api/sinaimg?url=代理绕过
手动安装(分步说明)
1️⃣ 安装依赖
npm install
2️⃣ 保存 Cookie
npm run save-cookies
会弹出一个独立浏览器窗口(与日常 Chrome 隔离),打开微博聊天页:用微博 App 扫码 → 手机确认 → 跳转到聊天列表后 Cookie 自动写入 cookies.json。
3️⃣ 配置群聊
复制模板并填入群名(须与微博中完全一致;也可以跳过此步,在查看器 ⚙️ 设置 → 归档群聊 里直接勾选):
cp config.example.json config.json
{
"chromePath": "",
"groups": ["群名称A", "群名称B"]
}
chromePath留空即自动探测系统中的 Chrome;仅在 Chrome 装在非默认位置时才需手动填写。
4️⃣ 运行 & 查看
npm run archive # 首次拉取最近 7 天,之后增量更新
npm run view # 启动查看器 → http://localhost:3456
3456 端口被占用?用
WEIBO_PORT=4000 npm run view换一个。
🔁 日常使用
平时保持查看器开着即可:
npm run view
打开 http://localhost:3456,桌面点击**同步归档图标**,手机从“更多 → 同步归档”获取消息。页面每 60 秒检查本地归档变化,这不等于每 60 秒向微博同步。
读记录小技巧
- 🎯 上下文:打开消息的上下文入口,查看前后时间邻域;午夜附近按需补邻日,并显示实际日期和读取边界,不把时间相邻视作同一话题。
- 引用核对:原文默认完整显示,长引用可主动收起;点击“核对原文”查看可能来源,再明确选中要打开的记录。核对后用“返回原上下文”继续阅读。
- 搜索定位:普通搜索按完整片段匹配,组合检索支持成员、归档日期和正文多词。点击结果“回原文”后可返回已加载结果和位置,继续“加载更多”。
- 阅读进度:每群保存本浏览器的阅读位置;搜索/AI 的临时原文浏览不会覆盖进入前的阅读进度。新归档提示由你明确点击后才跳转。
- @我:导航栏
@我只留提到你的消息。签到机器人会 @ 每个成员(实测占命中的 93%),已无条件排除 - 未读分隔线:再次打开时,「以下为新消息」标出上次离开后的增量
Cookie 维护
微博把 webim 登录态和 weibo.com 侧的 24 小时滚动会话绑在一起:光有 SUB(名义有效期一年)不够,滚动会话断供一天就会失效。归档器与查看器内置了自动保活:
| 机制 | 说明 |
|---|---|
| 🫀 查看器保活 | 查看器运行期间每 30 分钟自动续期滚动会话(先验登录态,未登录绝不吸收游客 Cookie) |
| ✅ 每轮归档续期 | 归档成功后整包保存浏览器 Cookie,并顺手续期滚动会话 |
| ⚠ 失效横幅 | 会话失效时查看器顶部第一时间出现红色横幅,点击即弹扫码窗口 |
🔄 npm run save-cookies |
已过期时重新扫码(不影响已归档数据) |
因此:保持查看器(或桌面 App)常驻,登录态基本不会过期。彻底停用超过一天,或微博侧强制失效(换设备、改密码、风控)后,仍需重新扫码 —— 点 Sync 会自动弹出扫码窗口。
Cookie 失效时归档器会明确报错并以退出码 1 退出,提示去跑 npm run save-cookies;它不会假装成功。定时任务的日志在 logs/archive.log,出现 Cookie 已失效 即需扫码:
grep -c "Cookie 已失效" logs/archive.log # 非 0 说明该重新扫码了
实时同步与发言
实时同步默认关闭,在“更多 → 设置与皮肤”中可开启。开启且有页面订阅时,服务端每 20 秒读取新消息,并入日文件后通过 SSE 通知页面;手动“同步归档”仍用于补全历史。消息区底部先展开“向群里发消息”,再输入内容(Enter 发送,Shift+Enter 换行)。
为什么默认关闭:轮询要调 query_messages 读群消息,而"读取是否会推进微博侧的已读游标"无法从外部证伪 —— 该接口的响应自带 last_read_mid,只能通过同一个接口观察它。若真会推进,原生微博客户端的未读提示就会被悄悄吃掉。证据倾向于不会(webim 客户端另有独立的 clear_unread.json,点开会话时才调用),但这个代价必须由你显式选择承担。
关闭时,实时轮询不再发起群消息请求:停止轮询定时器,旧轮次迟到响应不再续页、写盘或通知,发送后的额外轮询也跳过。已发出的网络请求无法撤回。独立的系统定时归档、手动同步、登录保活不由此开关停止;每日摘要通知启用时仍可能保留 SSE 连接。开关保存在服务端 live-config.json,使用同一服务的页面共享设置。
实时同步与发言都依赖群会话 id。在设置里从微博会话列表选群时,查看器会保存接口返回且经过 user.type === 2 校验的群 id;归档器之后也会用实际切群请求再次核对并刷新它。因此新选群不必先启动 Chrome 归档即可发言,实时同步仍保持默认关闭。
| 状态 | 表现 |
|---|---|
| 从设置中的微博会话列表选择 | 立即具备实时同步与发言条件,无需先归档 |
仅手工写入 config.json |
需先归档一次,让归档器核对并记录会话 id |
另外两个取舍:
- 没人看时不轮询:页面全部关闭后轮询立即停止,不在后台空打微博接口。
- 自己发的消息不做本地回显:发送成功后催一轮实时同步,自己的消息与别人的消息走完全相同的入库路径,避免两条来源的数据打架。
- 桌面通知:默认只在提到你时弹(点击跳到那条消息)。设置里可加关键词订阅,或打开"每轮新消息都汇总通知"(一轮最多弹 3 条)。规则在服务端判定(
lib/notify-rules.js),噪声不通知 —— 否则 93% 的推送都是签到机器人。授权只在真开了某条规则时才请求。 - 表情与图片:输入框左侧可选表情(复用渲染用的 340 条官方清单,插入
[标签]),也能发图 —— 选择、粘贴均可,上限 20MB。
发图的上传端点(
/webim/uploadx.json)是从 webim 前端 bundle 逆向出来的,尚未对真实接口验证过(真发一张就撤不回)。若发图失败,先看logs/里[send]那行的返回。
⚠️ 发消息是写操作,而查看器的 API 无鉴权(只绑 127.0.0.1)—— 本机任何程序都能借它发言。不要把端口暴露到外网。
🤖 AI 功能
查看器内置两个 AI 功能:每日摘要 和 Agentic Q&A 问答。需配置 OpenAI 兼容的 API。
配置
打开右上角“更多 → 设置与皮肤”后填写:
| 字段 | 说明 |
|---|---|
| Base URL | API 地址(如 https://api.deepseek.com/v1) |
| API Key | 密钥 |
| Model | 模型名(如 deepseek-chat) |
| Vision | 摘要时是否分析图片 |
配置保存到本地 ai-config.json(不会提交到 git)。
如果配置缺失或不完整,AI 入口仍会显示;点击后会自动打开设置、列出缺失字段,并聚焦第一个待填写项。API Key 无效、额度限制、请求超时和服务地址不可达也会显示对应的可操作提示。
Q&A 问答
桌面点击“AI 助读”图标,手机从“更多 → AI 助读”进入并输入问题,支持自然语言时间(“最近”、“昨天”、“上周”)和人名筛选。
Agent 模式(默认):LLM 迭代搜索,自主决定关键词和搜索范围,多轮查找直到信息充分。
💡 群友有外号就写张别名表:在该群目录中新建 aliases.json,即 output/<storage-key>/aliases.json;同目录的 .group-meta.json 记录了原始群名,可据此确认目录。内容形如 {"tombkeeper": ["tk", "TK"]}(键是归档里的真实昵称)。这样问「tk 最近说了什么」就能直接筛到人,不必靠 LLM 自己猜。文件可选,缺失时行为不变;命令行的 --group <群名> 仍可直接使用原始群名。
检索会自动剔除红包提示与签到机器人(规则同查看器的「隐藏噪音」),并折叠连续复读,所以「大家在聊什么」不会被刷屏带偏。问「上周」「最近」「昨天」时日期由工具算好,不靠 LLM 自己推。分享的链接、视频、图片也可检索(问「上周分享过什么链接」能直接搜到)。
索引是自动的:归档跑完会在后台为当天新增的话题块生成摘要与同义改写(只标新块,历史块按内容指纹复用,稳态下每小时约 1 次 LLM 调用)。没配 ai-config.json 也能用,只是少了这层跨词汇的召回。只有两种情况需要手动跑:给已有的历史存量补索引,或想重建全部索引 —— node scripts/build-qa-index.mjs --group <群名> --all(可断点续传,重跑自动跳过已完成的;存量大时先加 --dry-run 看看规模,或用 --max-llm-calls N 限量)。
技术方案
采用 Agentic Search 模式。工具循环由 @earendil-works/pi-agent-core 的 runAgentLoop 提供(工具分发 + 参数校验 + 重试 + 超时 + provider 适配),本仓只保留检索层、提示词与预算闸门(≤7 轮检索;预算耗尽且停在工具调用上时追加一次无工具收尾轮;LLM 精排单独封顶 4 次;整个请求 150 秒墙钟上限)。结构化状态累积参考 LedgerAgent 论文。
检索层:话题块切分(30 分钟断层)→ 原问题与已有关键词的最多 4 路 bigram BM25 → RRF 融合、重复候选限制与精确线索保护 → 仅明确近期问题启用时间权重 → 命中附近原文精排 → 块内多命中窗口。日期/人物过滤仍优先,精确线索保护不绕过精排剔除;不增加在线改写调用。噪音剔除、别名和相对日期解析保留,可选离线标注可补充摘要与同义改写。方法、固定合成对照与已知失败见 检索评测说明。
注意:AI 代理需支持 SSE 流式响应。
Benchmark (Agent vs Legacy) — 2026-07 在单个私有群(56 天历史、5 个问题)上实测:
| 指标 | Agent | Legacy |
|---|---|---|
| 平均延迟 | 20.5s | 10.1s |
| 成功率 | 100% | 100% |
| 日期推理 | 正确 | 偶尔错误 |
| 搜索覆盖 | 多轮扩展 | 单次 |
| 答案质量 | 高 | 中 |
⚠️ 这组数字已过期且不可复现。 它早于块级 BM25 检索重写与 pi-agent-core 迁移;原始脚本在 eval/(agent 工作目录,随 ee2a63d 一起 untrack 移除),且依赖私有归档数据。请把这张表当作「为什么 Agent 模式是默认」的方向性记录,而不是当前实测值。延迟一项现在应当更低:新循环不再付固定重试等待(实测两次 429 的自愈 3011ms → 1407ms,这是 SDK 默认退避对比旧版固定 1s+2s 的结果),所以偏保守而非偏乐观。
要拿当前数字,在自己的归档上跑 node scripts/benchmark-qa.js --group <群名>(详见 docs/agent-qa.md)。
📸 预览截图
点击展开截图
以下为历史版本截图,保留作界面参考;不代表 v1.31.0 的精简导航或引用展示。
消息视图 — 时段热力图、引用气泡、@提及高亮、每条「🎯 上下文」入口

上下文聚焦 — 点 🎯 弹出右侧面板;当前版本支持跨日时间邻域及待核对的引用线索

统计面板 — 每日消息量、活跃用户排行

截图中的用户名、群名与头像均为脱敏示例。
✅ 前置要求
| 必需 | 说明 |
|---|---|
| 🖥 macOS / Linux / WSL / Windows Git Bash | 归档与查看器可运行;Windows 原生目前为实验性支持,桌面壳仍仅发布 macOS 版 |
| 🟢 Node.js 22.19+ LTS 或 24+ | 推荐 nvm install 24,或从 nodejs.org 安装受支持的 LTS 版本 |
| 🌐 Google Chrome | 归档器用它登录并抓取消息;路径自动探测(也可在 config.json 的 chromePath 指定)。项目只用系统已装的 Chrome,因此 package.json 里设了 puppeteer.skipDownload,npm install 不会再下载一份 ~650 MB 的 Chromium;确实想用自带 Chromium 的话,用 PUPPETEER_SKIP_DOWNLOAD=0 npm install 装回来 |
| 📱 微博账号 + 手机 App | 首次需用 App 扫码登录网页版 |
| 🦀 Rust + Bun | 仅桌面应用需要;npm run desktop 会自动安装 |
Windows 推荐使用 WSL。原生 Windows 可在 Git Bash 中运行网页版安装流程;自动定时归档暂不配置,请使用 Windows 任务计划程序运行
npm run archive。桌面应用目前仅在 macOS 验证。若 Windows 的 Chrome 不在自动探测位置,请在
config.json使用C:/.../chrome.exe形式,或在 JSON 中把反斜杠写成双反斜杠;修改后重新运行npm run setup,安装器会读取该配置。
⏰ 定时自动运行
macOS / Linux / WSL — npm run setup 安装时会询问是否启用,也可随时用一条命令管理(macOS 用 launchd,Linux 用 systemd user timer,无 systemd 的环境 —— 如部分 WSL 发行版 —— 回退写 crontab 条目)。Windows 原生请使用任务计划程序:
./scripts/schedule.sh install # 安装(每小时归档一次)
./scripts/schedule.sh status # 查看状态
./scripts/schedule.sh uninstall # 干净卸载
systemd Linux 上可用 systemctl --user list-timers weibo-archive.timer 看到定时器。若自动安装失败,也可手动配置 cron(crontab -e),每小时归档一次:
0 * * * * cd /path/to/weibo-chat-auto && node scripts/auto-archive-simple.js >> logs/archive.log 2>&1
启用后定时归档会顺带刷新 Cookie,基本不会过期。
📁 项目结构
weibo-chat-auto/
├── scripts/
│ ├── setup.sh # 网页版一键安装脚本
│ ├── run-desktop.sh # 桌面应用一键启动(装依赖→编译→运行)
│ ├── auto-archive-simple.js # 主归档脚本
│ ├── save-cookies.js # Cookie 保存工具
│ ├── viewer-server.js # 本地查看器服务器
│ ├── qa-agent.mjs # Agentic Q&A 模块
│ └── … # 其他辅助脚本(QA 索引构建、渲染冒烟、截图)
├── config.example.json # 群聊配置模板
├── config.json # 实际配置(不提交)
├── viewer.html # 群聊档案馆(单页应用,多主题)
├── src-tauri/ # Tauri v2 桌面应用(Rust)
│ ├── src/lib.rs # 窗口、sidecar 拉起、应用内登录
│ └── tauri.conf.json
├── sidecar/build.mjs # 用 Bun 把 viewer-server 编译为独立二进制
├── cookies.json # 登录凭据(不提交)
├── ai-config.json # AI 配置(不提交)
├── state/ # 归档状态(不提交)
├── output/ # 归档数据(不提交)
│ └── <storage-key>/ # 新群为可读前缀 + hash;.group-meta.json 保存原始群名
│ └── weibo_chat_2026-05-01.json
├── cache/images/ # 图片缓存(不提交)
├── docs/ # 文档和截图
│ └── agent-qa.md # Agent Q&A 技术方案
└── package.json
🧾 输出数据格式
每条消息:
{
"id": 123456789,
"from_uid": 12345,
"user": "用户名",
"avatar": "https://...",
"timestamp": 1778000000000,
"time": "2026/05/11 12:00:00",
"date": "2026-05-11",
"content": "消息内容",
"type": 321,
"pics": ["https://upload.api.weibo.com/2/mss/msget?source=...&fid=..."],
"share": {
"url": "http://weibo.com/...",
"title": "...",
"author": "...",
"pics": ["https://wx1.sinaimg.cn/large/..."],
"reposts": 100,
"comments": 50,
"likes": 200
}
}
🛠 故障排除
Cookie 失效(同步报错、日历不更新、日志出现"未找到群聊")
npm run save-cookies
扫码登录后 Cookie 自动保存。
为什么过期? 独立浏览器不共享日常登录态,微博的滚动会话断供约一天即失效。保持查看器常驻(内置 30 分钟保活)或定时任务运行可自动续期。
页面加载失败
检查 config.json 中的 chromePath 是否正确,并确认已安装 Google Chrome。
3456 端口被占用
查看器会输出一行提示并退出(最常见原因是桌面应用已在运行 —— 服务是同一个,直接打开 http://localhost:3456 即可)。想换端口运行:
WEIBO_PORT=4000 npm run view
图片不显示
图片经本地服务器代理加载(依赖有效 Cookie),Cookie 过期后无法显示。重新 npm run save-cookies 即可。
🔒 隐私声明
本工具仅供归档自己参与的群聊消息,请勿用于侵犯他人隐私。
- 归档数据包含群内所有成员的消息内容、用户名和头像
- 请妥善保管
cookies.json和output/,切勿公开分享 - 代码仅供学习交流,使用者自行承担风险
- 请遵守微博服务条款和相关法律法规
📄 License
⭐ 觉得有用?给个 Star 吧!
探索相关项目
affaan-m/ECC
智能体执行与控制框架的性能优化系统。面向 Claude Code、Codex、Opencode、Cursor 等,涵盖技能、本能、记忆、安全与研究优先的开发。
300,313 星标NousResearch/hermes-agent
与你一同成长的智能体
262,134 星标multica-ai/andrej-karpathy-skills
一个用于改进 Claude Code 行为的 CLAUDE.md 文件,源自 Andrej Karpathy 对 LLM 编程陷阱的观察。
231,460 星标firecrawl/firecrawl
借助来自网络及其他来源的数据,强化你的 AI 智能体。正在构建面向超级智能的资料库。🔥
200,178 星标