✨符合阅读习惯的微信公众号助手、微信公众号转MarkDown、微信公众号转PDF、定时更新订阅公众号文章、生成微信公众号RSS订阅源、导出微信公众号订阅源、支持微信公众号Webhook/微信公众号API/AI Agent接入微信公众号微信公众号、订阅微信公众号、微信公众号助手 、微信公众号阅读、微信公众号接口、微信公众号爬虫、微信公众号监测、标签订阅微信公众号、微信公众号源、微信公众号读书、微信公众号文章、微信公众号框架、微信公众号管理、微信公众号源、微信公众号平台、微信公众号代码、微信公众号系统、微信公众号源码
See the codeQuick Start
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data ghcr.io/rachelos/we-mp-rss:latest
Visit http://:8001/ to get started
docker stop we-mp-rss
docker rm we-mp-rss
docker pull ghcr.io/rachelos/we-mp-rss:latest
# If you added other parameters, please modify accordingly
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data ghcr.io/rachelos/we-mp-rss:latest
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data rachelos/we-mp-rss:latest
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data docker.1ms.run/rachelos/we-mp-rss:latest
cyChaos, 子健MeLift, 晨阳, 童总, 胜宇, 军亮, 余光, 一路向北, 水煮土豆丝, 人可, 须臾, 澄明, 五梭,Jarvis,三三,哈基米,苹果
weread_mp collection mode for MP_WXS_* feeds (configuration)If you find We-MP-RSS helpful, feel free to buy me a beer!
Paypal
Login Interface

Main Interface

QR Code Authorization

Add Subscription

Client Application

The project adopts a front-end and back-end separation architecture:
For more project principles, please refer to the Project Documentation.
WeRSS supports custom HTML content filtering rules to automatically clean unwanted elements during article content collection, such as ads, recommendation links, etc.
ad-bannerad-containerdiv.ad-wrapper, .recommend-list > lidata-type="ad"# Get filter rules list
GET /api/filter-rules
# Create filter rule
POST /api/filter-rules
{
"mp_id": "[]", // Empty array for global rules
"rule_name": "Global Ad Filter",
"remove_ids": ["ad-banner"],
"remove_classes": ["ad-container"],
"priority": 10
}
# Update filter rule
PUT /api/filter-rules/{rule_id}
# Delete filter rule
DELETE /api/filter-rules/{rule_id}
git clone https://github.com/rachelos/we-mp-rss.git
cd we-mp-rss
pip install -r requirements.txt
cp config.example.yaml config.yaml
copy config.example.yaml config.yaml
python main.py -job True -init True
cd we-mp-rss/web_ui
yarn install
yarn dev
http://localhost:3000
The following are the environment variable configurations supported in config.yaml:
| Environment Variable | Default Value | Description |
|---|---|---|
APP_NAME | we-mp-rss | Application name |
SERVER_NAME | we-mp-rss | Server name |
WEB_NAME | WeRSS微信公众号订阅助手 | Frontend display name |
SEND_CODE | False | Whether to send authorization QR code in expired notification (text-only notification by default) |
CODE_TITLE | WeRSS授权二维码 | QR code notification title |
ENABLE_JOB | True | Whether to enable scheduled tasks |
AUTO_RELOAD | False | Auto-restart service on code changes |
THREADS | 2 | Maximum number of threads |
DB | sqlite:///data/db.db | Database connection string |
DINGDING_WEBHOOK | Empty | DingTalk notification webhook URL |
WECHAT_WEBHOOK | Empty | WeChat notification webhook URL |
FEISHU_WEBHOOK | Empty | Feishu notification webhook URL |
CUSTOM_WEBHOOK | Empty | Custom notification webhook URL |
SECRET_KEY | we-mp-rss | Secret key |
USER_AGENT | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36/WeRss | User agent |
SPAN_INTERVAL | 10 | Scheduled task execution interval (seconds) |
WEBHOOK.CONTENT_FORMAT | html | Article content sending format |
PORT | 8001 | API service port |
DEBUG | False | Debug mode |
MAX_PAGE | 5 | Maximum scraping pages |
RSS_BASE_URL | Empty | RSS domain address |
RSS_LOCAL | False | Whether to use local RSS links |
RSS_TITLE | Empty | RSS title |
RSS_DESCRIPTION | Empty | RSS description |
RSS_COVER | Empty | RSS cover |
RSS_FULL_CONTEXT | True | Whether to display full text |
RSS_ADD_COVER | True | Whether to add cover images |
RSS_CDATA | False | Whether to enable CDATA |
RSS_PAGE_SIZE | 30 | RSS pagination size |
TOKEN_EXPIRE_MINUTES | 4320 | Login session validity duration (minutes) |
CACHE.DIR | ./data/cache | Cache directory |
ARTICLE.TRUE_DELETE | False | Whether to truly delete articles |
GATHER.CONTENT | True | Whether to collect content |
GATHER.MODEL | app | Collection mode |
GATHER.CONTENT_AUTO_CHECK | False | Whether to automatically check uncollected article content |
GATHER.CONTENT_AUTO_INTERVAL | 59 | Time interval for automatically checking uncollected article content (minutes) |
GATHER.CONTENT_MODE | web | Content correction mode |
SAFE_HIDE_CONFIG | db,secret,token,notice.wechat,notice.feishu,notice.dingding | Configuration information to hide |
SAFE_LIC_KEY | RACHELOS | Authorization encryption key |
LOG_FILE | Empty | Log file path |
LOG_LEVEL | INFO | Log level |
EXPORT_PDF | False | Whether to enable PDF export functionality |
259 followers · starred Jul 2026
41 followers · starred Nov 2025
399 followers · starred Dec 2025
58 followers · starred Sep 2026
✨符合阅读习惯的微信公众号助手、微信公众号转MarkDown、微信公众号转PDF、定时更新订阅公众号文章、生成微信公众号RSS订阅源、导出微信公众号订阅源、支持微信公众号Webhook/微信公众号API/AI Agent接入微信公众号微信公众号、订阅微信公众号、微信公众号助手 、微信公众号阅读、微信公众号接口、微信公众号爬虫、微信公众号监测、标签订阅微信公众号、微信公众号源、微信公众号读书、微信公众号文章、微信公众号框架、微信公众号管理、微信公众号源、微信公众号平台、微信公众号代码、微信公众号系统、微信公众号源码
See the codeQuick Start
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data ghcr.io/rachelos/we-mp-rss:latest
Visit http://:8001/ to get started
docker stop we-mp-rss
docker rm we-mp-rss
docker pull ghcr.io/rachelos/we-mp-rss:latest
# If you added other parameters, please modify accordingly
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data ghcr.io/rachelos/we-mp-rss:latest
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data rachelos/we-mp-rss:latest
docker run -d --name we-mp-rss -p 8001:8001 -v ./data:/app/data docker.1ms.run/rachelos/we-mp-rss:latest
cyChaos, 子健MeLift, 晨阳, 童总, 胜宇, 军亮, 余光, 一路向北, 水煮土豆丝, 人可, 须臾, 澄明, 五梭,Jarvis,三三,哈基米,苹果
weread_mp collection mode for MP_WXS_* feeds (configuration)If you find We-MP-RSS helpful, feel free to buy me a beer!
Paypal
Login Interface

Main Interface

QR Code Authorization

Add Subscription

Client Application

The project adopts a front-end and back-end separation architecture:
For more project principles, please refer to the Project Documentation.
WeRSS supports custom HTML content filtering rules to automatically clean unwanted elements during article content collection, such as ads, recommendation links, etc.
ad-bannerad-containerdiv.ad-wrapper, .recommend-list > lidata-type="ad"# Get filter rules list
GET /api/filter-rules
# Create filter rule
POST /api/filter-rules
{
"mp_id": "[]", // Empty array for global rules
"rule_name": "Global Ad Filter",
"remove_ids": ["ad-banner"],
"remove_classes": ["ad-container"],
"priority": 10
}
# Update filter rule
PUT /api/filter-rules/{rule_id}
# Delete filter rule
DELETE /api/filter-rules/{rule_id}
git clone https://github.com/rachelos/we-mp-rss.git
cd we-mp-rss
pip install -r requirements.txt
cp config.example.yaml config.yaml
copy config.example.yaml config.yaml
python main.py -job True -init True
cd we-mp-rss/web_ui
yarn install
yarn dev
http://localhost:3000
The following are the environment variable configurations supported in config.yaml:
| Environment Variable | Default Value | Description |
|---|---|---|
APP_NAME | we-mp-rss | Application name |
SERVER_NAME | we-mp-rss | Server name |
WEB_NAME | WeRSS微信公众号订阅助手 | Frontend display name |
SEND_CODE | False | Whether to send authorization QR code in expired notification (text-only notification by default) |
CODE_TITLE | WeRSS授权二维码 | QR code notification title |
ENABLE_JOB | True | Whether to enable scheduled tasks |
AUTO_RELOAD | False | Auto-restart service on code changes |
THREADS | 2 | Maximum number of threads |
DB | sqlite:///data/db.db | Database connection string |
DINGDING_WEBHOOK | Empty | DingTalk notification webhook URL |
WECHAT_WEBHOOK | Empty | WeChat notification webhook URL |
FEISHU_WEBHOOK | Empty | Feishu notification webhook URL |
CUSTOM_WEBHOOK | Empty | Custom notification webhook URL |
SECRET_KEY | we-mp-rss | Secret key |
USER_AGENT | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36/WeRss | User agent |
SPAN_INTERVAL | 10 | Scheduled task execution interval (seconds) |
WEBHOOK.CONTENT_FORMAT | html | Article content sending format |
PORT | 8001 | API service port |
DEBUG | False | Debug mode |
MAX_PAGE | 5 | Maximum scraping pages |
RSS_BASE_URL | Empty | RSS domain address |
RSS_LOCAL | False | Whether to use local RSS links |
RSS_TITLE | Empty | RSS title |
RSS_DESCRIPTION | Empty | RSS description |
RSS_COVER | Empty | RSS cover |
RSS_FULL_CONTEXT | True | Whether to display full text |
RSS_ADD_COVER | True | Whether to add cover images |
RSS_CDATA | False | Whether to enable CDATA |
RSS_PAGE_SIZE | 30 | RSS pagination size |
TOKEN_EXPIRE_MINUTES | 4320 | Login session validity duration (minutes) |
CACHE.DIR | ./data/cache | Cache directory |
ARTICLE.TRUE_DELETE | False | Whether to truly delete articles |
GATHER.CONTENT | True | Whether to collect content |
GATHER.MODEL | app | Collection mode |
GATHER.CONTENT_AUTO_CHECK | False | Whether to automatically check uncollected article content |
GATHER.CONTENT_AUTO_INTERVAL | 59 | Time interval for automatically checking uncollected article content (minutes) |
GATHER.CONTENT_MODE | web | Content correction mode |
SAFE_HIDE_CONFIG | db,secret,token,notice.wechat,notice.feishu,notice.dingding | Configuration information to hide |
SAFE_LIC_KEY | RACHELOS | Authorization encryption key |
LOG_FILE | Empty | Log file path |
LOG_LEVEL | INFO | Log level |
EXPORT_PDF | False | Whether to enable PDF export functionality |
259 followers · starred Jul 2026
41 followers · starred Nov 2025
399 followers · starred Dec 2025
58 followers · starred Sep 2026