# novel **Repository Path**: sevenclear/novel ## Basic Information - **Project Name**: novel - **Description**: 爬取下说网站,正则自动匹配 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-04 - **Last Updated**: 2025-08-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 小说解析阅读项目 ## 项目简介 这是一个用于解析和阅读网络小说的Python应用程序。该项目支持从指定URL添加小说,自动解析小说章节内容,并提供章节阅读功能。应用采用异步处理方式,确保在解析小说内容时不会阻塞主线程,同时实现了章节预加载功能,提升用户阅读体验。 ## 功能特点 - **小说添加**:通过URL添加网络小说 - **章节解析**:自动解析小说章节标题和内容 - **章节阅读**:提供章节内容阅读功能 - **异步处理**:使用异步任务处理小说解析和存储,不阻塞主线程 - **章节预加载**:阅读章节时自动预加载下一章节 - **无头模式**:使用Playwright的无头模式解析小说,不打开浏览器窗口 - **完整URL处理**:自动处理相对路径,生成完整URL ## 技术栈 - Python 3.7+ - Playwright (网页解析) - asyncio (异步处理) - Flask (Web应用框架) - JSON (数据存储) ## 项目结构 ``` novel/ ├── app.py # 主应用文件,包含Web路由和核心功能 ├── novel_parser.py # 小说解析器,负责解析小说章节和内容 ├── novel_tasks.py # 异步任务处理,包含小说解析和章节预加载 ├── novels_data.json # 小说数据存储文件 ├── content/ # 章节内容存储目录 ├── templates/ # Web模板文件 │ ├── base.html # 基础模板 │ ├── chapter.html # 章节阅读页面 │ ├── index.html # 首页 │ └── novel_detail.html # 小说详情页面 └── static/ # 静态资源目录 ``` ## 安装说明 1. 克隆项目到本地 2. 安装依赖包 ``` pip install playwright asyncio flask playwright install ``` 3. 运行应用 ``` python app.py ``` ## 使用方法 1. 启动应用后,访问首页 2. 点击"添加小说"按钮,输入小说标题和URL 3. 系统会自动解析小说内容并存储 4. 在小说列表中选择要阅读的小说 5. 选择章节进行阅读,系统会自动预加载下一章节 ## 注意事项 1. 请确保网络连接正常,解析小说需要访问网络 2. 首次运行需要安装Playwright浏览器驱动 3. 应用使用无头模式运行,不会弹出浏览器窗口 4. 小说数据存储在novels_data.json文件中,章节内容存储在content目录下 5. 异步任务运行在后台,不会阻塞主线程 ## 未来优化方向 - 添加用户系统,支持多用户使用 - 增加小说分类和搜索功能 - 优化章节缓存机制 - 支持更多小说网站解析 - 添加阅读设置(字体大小、背景颜色等) ## 生成requirements.txt文件 requirements.txt文件包含了项目所需的所有依赖包及其版本信息。可以使用以下命令生成最新的requirements.txt文件: ``` pip freeze > requirements.txt ``` 在Windows PowerShell环境中,使用以下命令: ``` pip freeze | Out-File -Encoding utf8 requirements.txt ``` ## 打包成可执行文件 ### 方法一:使用批处理文件(推荐) 1. 确保已安装Python 3.7+环境 2. 双击运行 `package.bat` 批处理文件 3. 脚本会自动安装依赖包、Playwright浏览器驱动并使用PyInstaller打包 4. 打包完成后,可执行文件位于 `dist\novel_reader` 目录下 ### 方法二:手动打包 1. 安装依赖包 ``` pip install -r requirements.txt ``` 2. 安装Playwright浏览器驱动 ``` playwright install ``` 3. 使用PyInstaller打包 ``` pyinstaller novel_reader.spec ``` 4. 打包完成后,可执行文件位于 `dist\novel_reader` 目录下 ### 注意事项 1. 打包过程可能需要一些时间,请耐心等待 2. 确保网络连接正常,安装依赖包和浏览器驱动需要访问网络 3. 打包后的可执行文件可能会被杀毒软件误报,请添加信任 4. 首次运行可执行文件时,可能需要初始化一些配置