首页 / 资讯中心 / 文章详情

wewe-rss 上手指南:把微信公众号变成 RSS 源,三步完成私有化部署

wewe-rss 上手指南:把微信公众号变成 RSS 源,三步完成私有化部署 ★ FEATURED ARTICLE
wewe-rss 上手指南把微信公众号变成 RSS 源三步完成私有化部署【免费下载链接】wewe-rss更优雅的微信公众号订阅方式支持私有化部署、微信公众号RSS生成基于微信读书项目地址: https://gitcode.com/GitHub_Trending/we/wewe-rsswewe-rss 是一款支持私有化部署的微信公众号 RSS 生成服务基于微信读书接口把公众号文章转成标准 RSS/Atom/JSON 订阅源让你在任意 RSS 阅读器里统一管理。读完本文你可以完成服务部署、微信读书账号绑定和公众号源订阅拿到可直接使用的订阅地址。能力速览wewe-rss 能做什么输入 → 处理 → 输出粘贴公众号文章分享链接服务端经微信读书接口抓取历史文章与新文章输出/feeds/{id}.rss、.atom、.json三种格式聚合/feeds/all.(rss|atom|json)把所有公众号汇成一条流全部订阅源可导出 OPML标题过滤title_include/title_exclude两个参数多关键词用|分隔只保留标题命中的文章全文输出FEED_MODEfulltext后feed 携带文章全文在阅读器里直接读完不用跳回微信部署前准备环境、端口与账号要求项目要求运行环境Docker推荐docker-compose.yml 同时拉起 MySQL 8.3.0本地运行需 Node.js ≥20.9.0 pnpm端口服务监听 4000浏览器访问http://localhost:4000数据库MySQL默认想更轻量可换 SQLite见 docker-compose.sqlite.yml账号一个微信读书账号需微信扫码登录授权码AUTH_CODE用于服务端接口请求授权/feeds路径不需要主流程实操从 0 到公众号 RSS 的三步第一步把服务跑起来克隆仓库后用 Docker Compose 启动git clone https://gitcode.com/GitHub_Trending/we/wewe-rss cd wewe-rss docker compose up -d不想用 Docker 就本地跑pnpm install pnpm run -r build pnpm run start:server详细步骤见 README.md。确认成功浏览器打开http://localhost:4000看到带「公众号源」「账号管理」两个标签页的管理界面即可。第二步绑定微信读书账号公众号文章内容依赖微信读书接口先登录拿到凭证。进入账号管理点击添加读书账号用微信扫码登录。⚠️ 扫码时不要勾选「24小时后自动退出」否则账号次日就会失效。确认成功账号列表里出现新账号状态显示「启用」。第三步添加公众号源切到公众号源点左上角添加在弹窗里粘贴该公众号任意一篇文章的分享链接mp.weixin.qq.com 开头的链接点确定系统会自动识别公众号并抓取历史文章。注意添加频率过高容易被封控等 24 小时解封一次加多个号时控制下节奏。确认成功左侧列表出现订阅、文章列表出现标题和发布时间。此时每个公众号都有独立订阅地址直接复制进阅读器单个公众号http://localhost:4000/feeds/{公众号ID}.rss全部聚合http://localhost:4000/feeds/all.rss手动触发单个源更新在/feeds/{公众号ID}.rss后追加?updatetrue配置调优更新频率、全文模式与过滤参数调整更新节奏。CRON_EXPRESSION控制定时更新默认35 5,17 * * *即每天 5:35 和 17:35 各跑一次时区 Asia/Shanghai想更勤或更懒改这里就行。UPDATE_DELAY_TIME控制连续更新的间隔默认60s用来降低被封控的概率。开启全文输出。目标是阅读器里直接读全文环境变量设FEED_MODEfulltext响应会变慢、占更多内存如果只是偶尔想看改全局设置没必要单次请求带?modefulltext参数即可立即生效、不用重启。按关键词过滤。适合只追某个主题的人在订阅地址后追加查询参数多词用|分隔curl http://localhost:4000/feeds/all.atom?title_includeAI|机器学习title_exclude招聘效果是流里只剩标题命中 include 词、且不含 exclude 词的文章阅读器端零改造。单源地址同理例如/feeds/MP_WXS_123.json?limit30title_include张三|李四|王五title_exclude张三丰|赵六。限流与网络优化。MAX_REQUEST_PER_MINUTE控制接口限流默认 60 次/分钟。PLATFORM_URL是基础服务 URL默认https://weread.111965.xyz国内遇到 DNS 解析问题时可改用https://weread.965111.xyz加速访问。扩展集成钉钉机器人推送与 JSON Feed 脚本消费钉钉机器人推送。仓库自带一个独立服务在wewe-rss-dingtalk/目录它直接查数据库里最近 12 小时的新文章通过机器人 Webhook 推成卡片消息到群里。接法修改main.py里的access_token和secret创建机器人时钉钉设置页面有提供再把根目录docker-compose.yaml里13306:3306的端口映射字段取消注释然后python3 main.py或docker-compose up -d运行详见该目录下的 README.md。脚本消费。聚合流本身就是标准 JSON Feed任何脚本都能直接消费import requests resp requests.get( http://localhost:4000/feeds/all.json, params{limit: 20, title_include: AI}, ) for item in resp.json()[items][:5]: print(item[title])把这段塞进定时任务接上邮件、飞书或自己的告警系统就能按自己的规则处理新文章。原理速览技术栈与关键文件位置后端是 NestJSfeed 生成核心逻辑在 feeds.service.ts按请求后缀决定渲染 RSS 2.0、Atom 还是 JSON Feed定时任务由Cron装饰器驱动遵循CRON_EXPRESSION逐一遍历启用状态的源拉取新文章源之间按UPDATE_DELAY_TIME间隔前端管理界面在 apps/web/src/React Vite 技术栈本地开发时前端访问 5173、后端访问 4000数据模型在 schema.prisma只有 Account读书账号、Feed订阅源、Article文章三张表迁移文件在apps/server/prisma/migrations/全文抓取结果进 LRU 缓存默认最多存 5000 条热门文章的二次访问直接命中不再请求微信常见问题小黑屋、失效等 4 个坑问账号状态为什么显示「今日小黑屋」答账号被临时封控了等一天恢复。账号正常时可以通过重启服务/容器清除小黑屋记录。这个状态常出现在公众号源添加过频之后等 24 小时解封再操作。问扫码登录后账号第二天变成「失效」答大概率是微信扫码时勾了「24小时后自动退出」登录状态过期了。重新登录一次扫码时取消该选项即可。问部署到公网服务器后生成的链接别人打不开答在环境变量里把SERVER_ORIGIN_URL设为服务器公网 IP 或域名。这个变量用于生成 RSS 完整路径不设置的话链接指向 localhost只有本机能访问。问设了FEED_MODEfulltext后接口明显变慢答正常现象全文模式要逐篇拉取并存储正文响应变慢、占更多内存。只是偶尔想看全文的话保持默认设置、单次请求带?modefulltext不用重启。最小起步姿势建议先只添加 2~3 个你真会看的公众号FEED_MODE和CRON_EXPRESSION都保持默认跑一周再根据标题噪声调过滤词和更新频率——先跑通、再调参能更快判断哪些配置对你有用。后续想改代码从 feeds.service.ts 的handleGenerateFeed入手加一种输出格式或过滤条件都有现成实现可参考。【免费下载链接】wewe-rss更优雅的微信公众号订阅方式支持私有化部署、微信公众号RSS生成基于微信读书项目地址: https://gitcode.com/GitHub_Trending/we/wewe-rss创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
阅读完成 · 觉得有帮助?
咨询建站