Files
rssKeeper/README.md
T
congsh 54e7db0ef0 feat: init rssKeeper - RSS 抓取、管理与检索系统
完整功能包括:
- FastAPI 后端 + SQLite + FTS5 全文搜索
- RSS 源管理、自动发现、OPML 导入导出
- 文章抓取、去重、分类、全文检索
- RSS 源健康度监控
- Vue 3 + Element Plus 暗色主题 Web UI
- 对外 REST API 供 AI 分析调用
- Docker + docker-compose 部署
2026-06-11 14:03:36 +08:00

82 lines
1.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# rssKeeper
RSS 抓取、管理与检索系统。支持 Docker 部署,包含 Web UI 和 REST API。
## 功能特性
- 📡 **RSS 源管理** — 添加、编辑、删除 RSS 源,支持自动发现 feed URL
- 📄 **文章管理** — 自动抓取、去重、分类,全文搜索
- 🩺 **健康度监控** — 实时展示每个 RSS 源的成功率、最后更新、文章数量
- 🔍 **全文检索** — 基于 SQLite FTS5 的全文搜索
- 🐳 **Docker 部署** — 单容器部署,数据持久化
- 🔌 **对外 API** — RESTful API 供 AI 或外部系统调用
## 快速开始
### Docker 部署(推荐)
```bash
# 克隆项目
git clone <repo-url>
cd rssKeeper
# 启动
docker-compose up -d --build
# 访问 http://localhost:8000
```
### 开发模式
```bash
# 后端
cd backend
pip install -r requirements.txt
uvicorn main:app --reload --port 8000
# 前端(另开终端)
cd frontend
npm install
npm run dev
```
## 对外 API
### 获取最近文章(供 AI 分析)
```bash
# 获取最近 24 小时的文章
curl "http://localhost:8000/api/v1/external/recent?hours=24&limit=50"
# 指定 RSS 源
curl "http://localhost:8000/api/v1/external/recent?feed_id=1&hours=48"
# 指定分类
curl "http://localhost:8000/api/v1/external/recent?category=科技&hours=24"
```
### 获取源列表
```bash
curl "http://localhost:8000/api/v1/external/feeds"
```
### 按源获取文章
```bash
curl "http://localhost:8000/api/v1/external/feeds/1/articles?limit=100"
```
### 获取每日摘要
```bash
curl "http://localhost:8000/api/v1/external/summary?date=2024-06-01"
```
## 技术栈
- **后端**: Python 3.12 + FastAPI + SQLAlchemy + APScheduler
- **数据库**: SQLiteFTS5 全文搜索)
- **前端**: Vue 3 + Element Plus + Vite
- **部署**: Docker + docker-compose