Files
2026-08-13 15:15:56 +08:00

2.5 KiB

微信读书公众号采集

当公众号后台接口不可用时,可以把采集模式切换为微信读书 Web。该模式直接请求 weread.qq.com,不经过第三方中转,并继续使用现有的 MP_WXS_* Feed ID 和 RSS 地址。

配置

  1. 登录 https://weread.qq.com,打开任意公众号页面。
  2. 在浏览器开发者工具的 Network 面板找到 /api/mp/cover 请求(旧版 /web/mp/articles 已被微信读书废弃)。
  3. 从 Request Headers 复制完整 Cookie(新版不需要 x-wr-ticket)。
  4. 在管理页的“微信读书公众号采集”中保存,或设置环境变量:
GATHER.MODEL=weread_mp
WEREAD_COOKIE=wr_vid=...; wr_skey=...; wr_rt=...
WEREAD_CONTENT_INTERVAL=2

需要在 RSS 中直接显示全文时,同时设置:

GATHER.CONTENT=True

行为

  • 新版微信读书已废弃 /web/mp/articles 列表接口(实测恒返回 -2041),前端 JS 中也不再有文章列表接口。
  • 最新文章来自 GET https://weread.qq.com/api/mp/cover?bookId=,一次只返回该公众号最新一篇文章(reviewId + 标题 + 封面)。
  • 全文来自 GET https://weread.qq.com/web/mp/content?reviewId=,并提取 #js_content
  • 采用「cover 增量」采集:每次运行取最新一篇,若该 reviewId 已入库则跳过;新文章拉取正文后入库并更新 Feed 同步时间。
  • 正文请求失败的文章以空正文入库(RSS 仍可点击原文链接),下一轮遇到同一文章会跳过,不会重复请求。
  • -2041-2012-2010 会明确报告为认证或风控错误,不立即重试。

划线 / 笔记采集(weread 模式)

  • GATHER.MODEL=weread 时采集书架电子书的划线/笔记(/web/book/bookmarklist)。
  • 公众号订阅书(MP_WXS_*)在微信读书内没有划线数据,划线模式下会自动跳过并提示。
  • 手动「采集」接口(/weread/collect)会自动分档:指定 MP_WXS_* bookId 时走公众号文章采集,普通电子书走划线采集。

限制

  • 拿不到历史文章列表:/api/mp/cover 只返回最新一篇,无法回补公众号历史文章(旧版列表接口已废弃)。
  • Cookie 过期时(返回 -2012/-2041),应从浏览器重新复制 Cookie;通过环境变量提供的凭据优先于管理页保存值,管理页会标记为部署配置托管。
  • 微信读书有访问频率限制,全文请求间隔建议保持 WEREAD_CONTENT_INTERVAL >= 2