ランキングに戻る

cooderl/wewe-rss

TypeScript

🤗更优雅的微信公众号订阅方式,支持私有化部署、微信公众号RSS生成(基于微信读书)

rssrsshubwechatwereadwechat-rssmysqlnestjssqlitetrpc
スター成長
スター
9.7k
フォーク
1.7k
週間成長
Issue
270
5k
2024年2月2024年11月2025年9月2026年7月
成果物npmnpm install wewe-rss
README
预览

WeWe RSS

更优雅的微信公众号订阅方式。

主界面

✨ 功能

  • v2.x版本使用全新接口,更加稳定
  • 支持微信公众号订阅(基于微信读书)
  • 获取公众号历史发布文章
  • 后台自动定时更新内容
  • 微信公众号RSS生成(支持.atom.rss.json格式)
  • 支持全文内容输出,让阅读无障碍
  • 所有订阅源导出OPML

高级功能

  • 标题过滤:支持通过/feeds/all.(json|rss|atom)接口和/feeds/:feed对标题进行过滤

    {{ORIGIN_URL}}/feeds/all.atom?title_include=张三
    {{ORIGIN_URL}}/feeds/MP_WXS_123.json?limit=30&title_include=张三|李四|王五&title_exclude=张三丰|赵六
    
  • 手动更新:支持通过/feeds/:feed接口触发单个feedid更新

    {{ORIGIN_URL}}/feeds/MP_WXS_123.rss?update=true
    

🚀 部署

一键部署

Docker Compose 部署

参考 docker-compose.ymldocker-compose.sqlite.yml

Docker 命令启动

MySQL (推荐)

  1. 创建docker网络

    docker network create wewe-rss
    
  2. 启动 MySQL 数据库

    docker run -d \
      --name db \
      -e MYSQL_ROOT_PASSWORD=123456 \
      -e TZ='Asia/Shanghai' \
      -e MYSQL_DATABASE='wewe-rss' \
      -v db_data:/var/lib/mysql \
      --network wewe-rss \
      mysql:8.3.0 --mysql-native-password=ON
    
  3. 启动 Server

    docker run -d \
      --name wewe-rss \
      -p 4000:4000 \
      -e DATABASE_URL='mysql://root:123456@db:3306/wewe-rss?schema=public&connect_timeout=30&pool_timeout=30&socket_timeout=30' \
      -e AUTH_CODE=123567 \
      --network wewe-rss \
      cooderl/wewe-rss:latest
    

Nginx配置参考

SQLite (不推荐)

docker run -d \
  --name wewe-rss \
  -p 4000:4000 \
  -e DATABASE_TYPE=sqlite \
  -e AUTH_CODE=123567 \
  -v $(pwd)/data:/app/data \
  cooderl/wewe-rss-sqlite:latest

本地部署

使用 pnpm install && pnpm run -r build && pnpm run start:server 命令 (可配合 pm2 守护进程)

详细步骤 (SQLite示例):

# 需要提前声明环境变量,因为prisma会根据环境变量生成对应的数据库连接
export DATABASE_URL="file:../data/wewe-rss.db"
export DATABASE_TYPE="sqlite"
# 删除mysql相关文件,避免prisma生成mysql连接
rm -rf apps/server/prisma
mv apps/server/prisma-sqlite apps/server/prisma
# 生成prisma client
npx prisma generate --schema apps/server/prisma/schema.prisma
# 生成数据库表
npx prisma migrate deploy --schema apps/server/prisma/schema.prisma
# 构建并运行
pnpm run -r build
pnpm run start:server

⚙️ 环境变量

变量名 说明 默认值
DATABASE_URL 必填 数据库地址,例如 mysql://root:123456@127.0.0.1:3306/wewe-rss -
DATABASE_TYPE 数据库类型,使用 SQLite 时需填写 sqlite -
AUTH_CODE 服务端接口请求授权码,空字符或不设置将不启用 (/feeds路径不需要) -
SERVER_ORIGIN_URL 服务端访问地址,用于生成RSS完整路径 -
MAX_REQUEST_PER_MINUTE 每分钟最大请求次数 60
FEED_MODE 输出模式,可选值 fulltext (会使接口响应变慢,占用更多内存) -
CRON_EXPRESSION 定时更新订阅源Cron表达式 35 5,17 * * *
UPDATE_DELAY_TIME 连续更新延迟时间,减少被关小黑屋 60s
ENABLE_CLEAN_HTML 是否开启正文html清理 false
PLATFORM_URL 基础服务URL https://weread.111965.xyz

注意: 国内DNS解析问题可使用 https://weread.965111.xyz 加速访问

🔔 钉钉通知

进入 wewe-rss-dingtalk 目录按照 README.md 指引部署

📱 使用方式

  1. 进入账号管理,点击添加账号,微信扫码登录微信读书账号。

    注意不要勾选24小时后自动退出

  2. 进入公众号源,点击添加,通过提交微信公众号分享链接,订阅微信公众号。 添加频率过高容易被封控,等24小时解封

🔑 账号状态说明

状态 说明
今日小黑屋 账号被封控,等一天恢复。账号正常时可通过重启服务/容器清除小黑屋记录
禁用 不使用该账号
失效 账号登录状态失效,需要重新登录

💻 本地开发

  1. 安装 nodejs 20 和 pnpm

  2. 修改环境变量:

    cp ./apps/web/.env.local.example ./apps/web/.env
    cp ./apps/server/.env.local.example ./apps/server/.env
    
  3. 执行 pnpm install && pnpm run build:web && pnpm dev

    ⚠️ 注意:此命令仅用于本地开发,不要用于部署!

  4. 前端访问 http://localhost:5173,后端访问 http://localhost:4000

⚠️ 风险声明

为了确保本项目的持久运行,某些接口请求将通过 weread.111965.xyz 进行转发。请放心,该转发服务不会保存任何数据。

❤️ 赞助

如果觉得 WeWe RSS 项目对你有帮助,可以给我来一杯啤酒!

PayPal: paypal.me/cooderl

👨‍💻 贡献者

📄 License

MIT @cooderl

関連リポジトリ
sansan0/TrendRadar

⭐AI-driven public opinion & trend monitor with multi-platform aggregation, RSS, and smart alerts.🎯 告别信息过载,你的 AI 舆情监控助手与热点筛选工具!聚合多平台热点 + RSS 订阅,支持关键词精准筛选。AI 智能筛选新闻 + AI 翻译 + AI 分析简报直推手机,也支持接入 MCP 架构,赋能 AI 自然语言对话分析、情感洞察与趋势预测等。支持 Docker ,数据本地/云端自持。集成微信/飞书/钉钉/Telegram/邮件/ntfy/bark/slack 等渠道智能推送。

PythonPyPIGNU General Public License v3.0data-analysispython
trendradar.sandev.cc
60.7k24.8k
huginn/huginn

Create agents that monitor and act on your behalf. Your agents are standing by!

RubyRubyGemsMIT Licenseautomationnotifications
49.7k4.3k
DIYgod/RSSHub

🧡 Everything is RSSible

TypeScriptnpmGNU Affero General Public License v3.0rsstwitter
docs.rsshub.app
45.3k10k
RSSNext/Folo

🧡 Folo is the AI RSS Reader

TypeScriptnpmGNU Affero General Public License v3.0readerrss
app.folo.is
38.7k2.1k
glanceapp/glance

A self-hosted dashboard that puts all your feeds in one place

GoGo ModulesGNU Affero General Public License v3.0dashboardhomepage
35.8k1.4k
dgtlmoon/changedetection.io

Best and simplest tool for website change detection, web page monitoring, and website change alerts. Perfect for tracking content changes, price drops, restock alerts, and website defacement monitoring—all for free or enjoy our SaaS plan!

PythonPyPIApache License 2.0website-monitorwebsite-monitoring
changedetection.io
32.4k1.9k
ArchiveBox/ArchiveBox

🗃 Open source self-hosted web archiving. Takes URLs/browser history/bookmarks/Pocket/Pinboard/etc., saves HTML, JS, PDFs, media, and more...

PythonPyPIMIT Licensepocketwget
archivebox.io
28k1.6k
timqian/chinese-independent-blogs

中文独立博客列表

PythonPyPIMIT Licenserssblog
23.6k2.7k
RSSNext/Follow

🧡 Follow everything in one place

TypeScriptnpmGNU General Public License v3.0readerrss
follow.is
23.1k970
Jackett/Jackett

API Support for your favorite torrent trackers

C#GNU General Public License v2.0torrenttorznab
15.8k1.5k
FreshRSS/FreshRSS

A free, self-hostable news aggregator…

PHPPackagistGNU Affero General Public License v3.0freshrssphp
freshrss.org
15.6k1.2k
Ranchero-Software/NetNewsWire

RSS reader for macOS and iOS.

SwiftMIT Licensefeed-readerrss-reader
netnewswire.com
10.2k722