安爸-超级家庭

微信公众号订阅神器

安爸 发布于

项目简介

微信公众号订阅神器,一键生成RSS,轻松管理公众号内容!亮点:1. 支持微信公众号内容抓取与RSS生成;2. 提供用户友好的Web管理界面,操作简单;3. 定时自动更新,不错过任何新文章

功能特性

  • 微信公众号内容抓取和解析
  • RSS订阅生成
  • 用户友好的Web管理界面
  • 定时自动更新内容
  • 支持多种数据库(默认SQLite,可选MySQL)
  • 支持多种抓取方式
  • 支持多种RSS客户端
  • 支持授权过期提醒

界面截图

  • 登录界面
  • 主界面
  • 扫码授权
  • 添加订阅
  • 客户端应用

系统架构

项目采用前后端分离架构:

  • 后端:Python + FastAPI
  • 前端:Vue 3 + Vite
  • 数据库:SQLite (默认)/MySQL

安装指南

后端服务

1. 克隆项目

git clone https://github.com/rachelos/we-mp-rss.git cd we-mp-rss

2. 安装Python依赖

pip install -r requirements.txt

3. 配置数据库 复制并修改配置文件:

cp config.example.yaml config.yaml copy config.example.yaml config.yaml

4. 启动API服务

uvicorn web:app --host 0.0.0.0 --port 8001 --reload

或 如果需要初始化数据库和数据,可以使用以下命令:

python3 main.py -job True -init True

前端界面

1. 进入web_ui目录

cd web_ui

2. 安装Node.js依赖

npm install

3. 启动开发服务器

npm run dev

定时任务

配置定时抓取微信公众号内容:

python job.py

配置说明

编辑config.yaml文件配置以下参数:

  • 数据库连接
  • 微信公众号配置
  • 抓取间隔时间
  • API密钥等

快速运行

Docker Sqlite

docker run -d \   --name we-mp-rss \   -p 8001:8001 \   -e DB=sqlite:///data/db.db \   -e USERNAME:admin \   -e PASSWORD:admin@123 \   -e DINGDING_WEBHOOK=https://oapi.dingtalk.com/robot/send?access_token=xxx \   -v $(pwd)/data:/app/data \   ghcr.io/rachelos/we-mp-rss:latest

  • Compose Yaml

services:   we-mp-rss:     image: ghcr.io/rachelos/we-mp-rss:latest     container_name: we-mp-rss     ports:       - "8001:8001"     environment:       - DB=sqlite:///data/db.db       - USERNAME=admin       - PASSWORD=admin@123       - DINGDING_WEBHOOK=https://oapi.dingtalk.com/robot/send?access_token=xxx     volumes:       - ./data:/app/data

Docker Mysql

docker run -d \   --name we-mp-rss \   -p 8001:8001 \   -e DB=mysql+pymysql://<username>:<password>@<host>/<database>?charset=utf8mb4 \   -e USERNAME:admin \   -e PASSWORD:admin@123 \   -e DINGDING_WEBHOOK=https://oapi.dingtalk.com/robot/send?access_token=xxx \   -v $(pwd)/data:/app/data \   ghcr.io/rachelos/we-mp-rss:latest

  • Compose Yaml

services:   we-mp-rss:     image: ghcr.io/rachelos/we-mp-rss:latest     container_name: we-mp-rss     ports:       - "8001:8001"     environment:       - DB=mysql+pymysql://<username>:<password>@<host>/<database>?charset=utf8mb4       - USERNAME=admin       - PASSWORD=admin@123       - DINGDING_WEBHOOK=https://oapi.dingtalk.com/robot/send?access_token=xxx     volumes:       - ./data:/app/data

项目地址

https://github.com/rachelos/we-mp-rss

扫码加入技术交流群,备注「开发语言-城市-昵称

(文:GitHubStore)

微信公众号订阅神器最先出现在每时AI


扫描二维码,在手机上阅读