Skip to content

简介

Reader-Rust 是一个用 Rust 实现的书源阅读服务器。它提供了书源管理、搜索、章节检索和内容解析等功能。

特性

  • 高性能: 基于 Rust 和 axum 构建,内存安全,并发处理能力强
  • 灵活书源: 支持 CSS选择器、JSONPath、XPath、正则、JavaScript 多种解析方式
  • 规则引擎: 自动检测内容类型,智能匹配解析规则
  • 数据持久化: SQLite 存储书源配置,文件缓存章节内容
  • Vue 2 前端: 配套 Web 界面,连接 Rust 后端 API

架构概览

┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   Web 前端   │────→│   API 层    │────→│  服务层     │
│  (Vue 2)    │     │  (axum)     │     │  (业务逻辑) │
└─────────────┘     └─────────────┘     └──────┬──────┘

                         ┌─────────────────────┼─────────────────────┐
                         ↓                     ↓                     ↓
                   ┌─────────┐          ┌──────────┐          ┌──────────┐
                   │ 爬虫层   │          │ 解析层    │          │ 存储层    │
                   │(HTTP请求)│          │(规则引擎) │          │(SQLite)  │
                   └─────────┘          └──────────┘          └──────────┘

模块结构

  • src/api/ - HTTP 处理程序和路由 (axum)
  • src/service/ - 业务逻辑层
  • src/parser/ - 内容提取引擎
  • src/crawler/ - HTTP 抓取
  • src/model/ - 数据结构
  • src/storage/ - 持久化层

下一步