3 步跑通微信公众号 RSS:wewe-rss 私有化部署快速指南
2026/9/18 16:31:04 网站建设 项目流程

3 步跑通微信公众号 RSS:wewe-rss 私有化部署快速指南

【免费下载链接】wewe-rss🤗更优雅的微信公众号订阅方式,支持私有化部署、微信公众号RSS生成(基于微信读书)项目地址: https://gitcode.com/GitHub_Trending/we/wewe-rss

wewe-rss是一个基于微信读书接口的微信公众号 RSS 生成工具,支持私有化部署:把你关注的公众号文章转换成标准 RSS / Atom / JSON 订阅源,聚合进你已有的 RSS 阅读器里。

认知篇:它解决什么问题

先看两个典型场景:

  • 你关注了二三十个技术公众号,每天打开微信逐个翻推送,错过一篇就要去公众号主页里翻历史文章;
  • 你习惯用 Inoreader、Reeder 这类阅读器管理信息,但微信公众号内容根本进不去。

wewe-rss 做的事很直接:定时抓取公众号文章 → 存库 → 输出标准 RSS 订阅地址。它是自部署的服务(后端 NestJS + 前端 React),数据完全在自己手里,不依赖任何第三方聚合平台。

适合谁:

  • 用 RSS 阅读器、想把公众号也纳入统一信息流的人
  • 不想把阅读数据放在别人服务器上的人
  • 想通过 API 把公众号内容接进自己的工作流(通知、存档、二次处理)的开发者

上手篇:Docker Compose 十分钟跑起来

一键启动服务

只需 Docker,不需要 Node 环境。克隆仓库后启动即可,MySQL 数据库和表结构会由 Compose 自动初始化:

git clone https://gitcode.com/GitHub_Trending/we/wewe-rss cd wewe-rss docker-compose up -d

等待约 1 分钟,访问http://localhost:4000,点击页面上的链接进入/dash管理界面(或直接访问http://localhost:4000/dash)。

⚠️ 首次进入会要求输入授权码,对应 docker-compose.yml 中的AUTH_CODE(示例默认123567),外网部署建议改成自己的值。

💡 机器资源有限?用 docker-compose.sqlite.yml 换 SQLite 存储,docker-compose -f docker-compose.sqlite.yml up -d一条命令,连 MySQL 容器都省了。

添加微信读书账号(扫码一次)

wewe-rss 通过微信读书接口获取公众号内容,所以第一步是绑定一个微信读书账号:

  1. 左侧进入账号管理
  2. 点击添加读书账号,弹出二维码,用绑定了微信读书的手机微信扫码登录

⚠️ 登录时不要勾选"24 小时后自动退出",否则账号一天就失效,得重新扫码。

添加公众号源(贴一个文章链接)

不需要知道公众号的"微信号"——随便找一篇该公众号的文章,复制链接即可:

  1. 切换到公众号源
  2. 点击添加 +,在对话框里粘贴文章链接,确认
  3. 系统自动识别公众号信息,并开始抓取文章列表;还可以勾选抓取历史文章

输入框支持每行一个链接,可以一次贴多个批量添加。添加成功后,左侧列表出现该公众号,点进去就能看到抓到的文章列表。

⚠️ 添加/抓取频率过高会触发微信读书风控(账号显示"今日小黑屋"),等 24 小时自动恢复,账号正常时重启容器可清除记录。

掌控篇:三个真正用得上的功能

1. 订阅地址:任意读者都能用

每个公众号源生成独立地址,all则是全部公众号的聚合流,后缀即格式(.rss/.atom/.json):

http://localhost:4000/feeds/all.rss http://localhost:4000/feeds/MP_WXS_123.rss

把地址加进你的阅读器即可。部署到服务器对外提供服务时,在 Compose 环境变量里设置SERVER_ORIGIN_URL为公网地址,否则生成的链接指向 localhost:

environment: - SERVER_ORIGIN_URL=https://your-domain.com

2. 标题过滤:只推送想看的内容

URL 上加两个查询参数即可按标题过滤,多个关键词用|分隔(实现在 apps/server/src/feeds/feeds.service.ts):

# 只看标题含"AI"或"机器学习"的文章 curl "http://localhost:4000/feeds/all.atom?title_include=AI|机器学习" # 排除招聘和广告类文章,两种条件可组合 curl "http://localhost:4000/feeds/all.rss?title_exclude=招聘|广告"

对"关注的大号但只想要某个栏目"的场景特别实用,不用再开第二个订阅源。

3. 全文模式与更新控制

  • 全文输出:设置FEED_MODE=fulltext,RSS 里带文章正文而不只是摘要。代价是响应变慢、内存占用更高,订阅号多时按需开启;也可以单次请求临时开启:/feeds/all.rss?mode=fulltext
  • 更新节奏:默认每天 5:35 和 17:35 各自动更新一次(Cron 表达式35 5,17 * * *),可用CRON_EXPRESSION环境变量调整
  • 手动触发:某个号更新不及时时,访问一次它的地址并带上update=true即可触发抓取:
curl "http://localhost:4000/feeds/MP_WXS_123.rss?update=true"

其余能力一笔带过:正文 HTML 清理(ENABLE_CLEAN_HTML=true)、全部订阅源一键导出 OPML、内置 LRU 缓存(默认 5000 条)加速重复访问,以及仓库内 wewe-rss-dingtalk/ 目录下的钉钉机器人模块——配置好 Webhook 后,新文章可以直接推送到群聊。

下一步建议

  1. 先跑通主链路docker-compose up -d后完成扫码绑定,添加 1~2 个公众号,把http://localhost:4000/feeds/all.rss加进你的阅读器,确认文章能正常同步。
  2. 按需调参:外网部署设置SERVER_ORIGIN_URLAUTH_CODE;阅读体验优先就开FEED_MODE=fulltext,机器配置低就保持摘要模式 + SQLite 方案。
  3. 用过滤收敛信息流:给聚合源加上title_include/title_exclude参数,把噪音挡在阅读器之外,再考虑是否需要钉钉推送。

说明:以上文章内容基于我对仓库的实际核查(README.md、docker-compose.yml、apps/server/src/feeds/feeds.controller.ts、前端页面代码等),关键点已修正参考文章中的偏差:管理界面实际挂载在/dash路径、CRON_EXPRESSION默认值为35 5,17 * * *等。仓库未做任何修改。

【免费下载链接】wewe-rss🤗更优雅的微信公众号订阅方式,支持私有化部署、微信公众号RSS生成(基于微信读书)项目地址: https://gitcode.com/GitHub_Trending/we/wewe-rss

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询