Name | novel-downloader JSON |
Version |
1.4.5
JSON |
| download |
home_page | None |
Summary | A command-line tool for downloading Chinese web novels from Qidian and similar platforms. |
upload_time | 2025-07-12 01:11:31 |
maintainer | None |
docs_url | None |
author | None |
requires_python | >=3.11 |
license | MIT License
Copyright (c) 2025 Saudade Z
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
|
keywords |
novel
web novel
qidian
biquge
downloader
parser
fiction
cli
automation
ebook
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# novel-downloader
一个基于 [playwright](https://playwright.dev/) 和 [aiohttp](https://github.com/aio-libs/aiohttp) 的小说下载工具/库。
> 本项目开发环境为 Python 3.12, 需确保运行环境为 Python 3.11 及以上版本
## 功能特性
- 支持断点续爬, 自动续传未完成任务
- 自动整合所有章节并导出为:
- TXT
- EPUB (可选包含章节插图)
- 支持活动广告过滤:
- [x] 章节标题
- [ ] 章节正文
---
## 快速开始
### 安装
使用 `pip` 安装:
```bash
pip install novel-downloader
```
如需使用浏览器模式 (即 `mode: browser`), 请确保已安装 Playwright 依赖:
```bash
playwright install
```
如需启用字体解密功能 (`decode_font`, 用于处理起点中文网对近一个月更新章节所采用的字体混淆技术), 请使用扩展安装方式:
```bash
pip install novel-downloader[font-recovery]
```
- 详细可见: [安装](https://github.com/BowenZ217/novel-downloader/blob/main/docs/1-installation.md)
---
### CLI 模式
```bash
# 初始化默认配置 (生成 settings.toml)
novel-cli config init
# 编辑 ./settings.toml 完成 site/book_ids 等
# 可查看 docs/3-settings-schema.md
# 执行下载任务
novel-cli download 123456
```
- 详细可见: [支持站点列表](https://github.com/BowenZ217/novel-downloader/blob/main/docs/4-supported-sites.md)
- 更多使用方法, 查看 [使用示例](https://github.com/BowenZ217/novel-downloader/blob/main/docs/6-cli-usage-examples.md)
---
### TUI 模式 (终端用户界面)
**注意**: TUI 模式仍在开发中, 目前尚未实现登录和修改设置等功能。建议优先使用稳定的 CLI 模式。
```bash
# 初始化默认配置 (生成 settings.toml)
novel-cli config init
# 编辑 ./settings.toml 修改网络配置
# 可查看 docs/3-settings-schema.md
# 启动 TUI 界面
novel-tui
```
- 详细可见: [支持站点列表](https://github.com/BowenZ217/novel-downloader/blob/main/docs/4-supported-sites.md)
- 更多使用方法, 查看 [使用示例](https://github.com/BowenZ217/novel-downloader/blob/main/docs/5-tui-usage-examples.md)
---
### GUI 模式 (图形界面)
尚未实现
---
## 从 GitHub 安装 (开发版)
如需体验开发中的最新功能, 可通过 GitHub 安装:
```bash
git clone https://github.com/BowenZ217/novel-downloader.git
cd novel-downloader
pip install .
# 或安装带可选功能:
# pip install .[font-recovery]
```
---
## 文档结构
- [项目简介](#项目简介)
- [安装](https://github.com/BowenZ217/novel-downloader/blob/main/docs/1-installation.md)
- [配置](https://github.com/BowenZ217/novel-downloader/blob/main/docs/2-configuration.md)
- [settings.toml 配置说明](https://github.com/BowenZ217/novel-downloader/blob/main/docs/3-settings-schema.md)
- [支持站点列表](https://github.com/BowenZ217/novel-downloader/blob/main/docs/4-supported-sites.md)
- [TUI 使用示例](https://github.com/BowenZ217/novel-downloader/blob/main/docs/5-tui-usage-examples.md)
- [CLI 使用示例](https://github.com/BowenZ217/novel-downloader/blob/main/docs/6-cli-usage-examples.md)
- [复制 Cookies](https://github.com/BowenZ217/novel-downloader/blob/main/docs/copy-cookies.md)
- [文件保存](https://github.com/BowenZ217/novel-downloader/blob/main/docs/file-saving.md)
- [模块与接口文档](https://github.com/BowenZ217/novel-downloader/blob/main/docs/api/README.md)
- [TODO](https://github.com/BowenZ217/novel-downloader/blob/main/docs/todo.md)
- [开发](https://github.com/BowenZ217/novel-downloader/blob/main/docs/develop.md)
- [项目说明](#项目说明)
---
## 项目说明
- 本项目仅供学习和研究使用, 不得用于任何商业或违法用途。请遵守目标网站的 robots.txt 以及相关法律法规。
- 本项目开发者对因使用该工具所引起的任何法律责任不承担任何责任。
- 如果遇到网站结构变化或其他问题, 可能导致程序无法正常工作, 请自行调整代码或寻找其他解决方案。
Raw data
{
"_id": null,
"home_page": null,
"name": "novel-downloader",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "novel, web novel, qidian, biquge, downloader, parser, fiction, cli, automation, ebook",
"author": null,
"author_email": "Saudade Z <saudadez217@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/d7/37/b2b48afb5e41d4d46f3e7012dbe49eca55d9d8a98f209cbd923bacd32f86/novel_downloader-1.4.5.tar.gz",
"platform": null,
"description": "# novel-downloader\n\n\u4e00\u4e2a\u57fa\u4e8e [playwright](https://playwright.dev/) \u548c [aiohttp](https://github.com/aio-libs/aiohttp) \u7684\u5c0f\u8bf4\u4e0b\u8f7d\u5de5\u5177/\u5e93\u3002\n\n> \u672c\u9879\u76ee\u5f00\u53d1\u73af\u5883\u4e3a Python 3.12, \u9700\u786e\u4fdd\u8fd0\u884c\u73af\u5883\u4e3a Python 3.11 \u53ca\u4ee5\u4e0a\u7248\u672c\n\n## \u529f\u80fd\u7279\u6027\n\n- \u652f\u6301\u65ad\u70b9\u7eed\u722c, \u81ea\u52a8\u7eed\u4f20\u672a\u5b8c\u6210\u4efb\u52a1\n- \u81ea\u52a8\u6574\u5408\u6240\u6709\u7ae0\u8282\u5e76\u5bfc\u51fa\u4e3a:\n - TXT\n - EPUB (\u53ef\u9009\u5305\u542b\u7ae0\u8282\u63d2\u56fe)\n- \u652f\u6301\u6d3b\u52a8\u5e7f\u544a\u8fc7\u6ee4:\n - [x] \u7ae0\u8282\u6807\u9898\n - [ ] \u7ae0\u8282\u6b63\u6587\n\n---\n\n## \u5feb\u901f\u5f00\u59cb\n\n### \u5b89\u88c5\n\n\u4f7f\u7528 `pip` \u5b89\u88c5:\n\n```bash\npip install novel-downloader\n```\n\n\u5982\u9700\u4f7f\u7528\u6d4f\u89c8\u5668\u6a21\u5f0f (\u5373 `mode: browser`), \u8bf7\u786e\u4fdd\u5df2\u5b89\u88c5 Playwright \u4f9d\u8d56:\n\n```bash\nplaywright install\n```\n\n\u5982\u9700\u542f\u7528\u5b57\u4f53\u89e3\u5bc6\u529f\u80fd (`decode_font`, \u7528\u4e8e\u5904\u7406\u8d77\u70b9\u4e2d\u6587\u7f51\u5bf9\u8fd1\u4e00\u4e2a\u6708\u66f4\u65b0\u7ae0\u8282\u6240\u91c7\u7528\u7684\u5b57\u4f53\u6df7\u6dc6\u6280\u672f), \u8bf7\u4f7f\u7528\u6269\u5c55\u5b89\u88c5\u65b9\u5f0f:\n\n```bash\npip install novel-downloader[font-recovery]\n```\n\n- \u8be6\u7ec6\u53ef\u89c1: [\u5b89\u88c5](https://github.com/BowenZ217/novel-downloader/blob/main/docs/1-installation.md)\n\n---\n\n### CLI \u6a21\u5f0f\n\n```bash\n# \u521d\u59cb\u5316\u9ed8\u8ba4\u914d\u7f6e (\u751f\u6210 settings.toml)\nnovel-cli config init\n\n# \u7f16\u8f91 ./settings.toml \u5b8c\u6210 site/book_ids \u7b49\n# \u53ef\u67e5\u770b docs/3-settings-schema.md\n\n# \u6267\u884c\u4e0b\u8f7d\u4efb\u52a1\nnovel-cli download 123456\n```\n\n- \u8be6\u7ec6\u53ef\u89c1: [\u652f\u6301\u7ad9\u70b9\u5217\u8868](https://github.com/BowenZ217/novel-downloader/blob/main/docs/4-supported-sites.md)\n- \u66f4\u591a\u4f7f\u7528\u65b9\u6cd5, \u67e5\u770b [\u4f7f\u7528\u793a\u4f8b](https://github.com/BowenZ217/novel-downloader/blob/main/docs/6-cli-usage-examples.md)\n\n---\n\n### TUI \u6a21\u5f0f (\u7ec8\u7aef\u7528\u6237\u754c\u9762)\n\n**\u6ce8\u610f**: TUI \u6a21\u5f0f\u4ecd\u5728\u5f00\u53d1\u4e2d, \u76ee\u524d\u5c1a\u672a\u5b9e\u73b0\u767b\u5f55\u548c\u4fee\u6539\u8bbe\u7f6e\u7b49\u529f\u80fd\u3002\u5efa\u8bae\u4f18\u5148\u4f7f\u7528\u7a33\u5b9a\u7684 CLI \u6a21\u5f0f\u3002\n\n```bash\n# \u521d\u59cb\u5316\u9ed8\u8ba4\u914d\u7f6e (\u751f\u6210 settings.toml)\nnovel-cli config init\n\n# \u7f16\u8f91 ./settings.toml \u4fee\u6539\u7f51\u7edc\u914d\u7f6e\n# \u53ef\u67e5\u770b docs/3-settings-schema.md\n\n# \u542f\u52a8 TUI \u754c\u9762\nnovel-tui\n```\n\n- \u8be6\u7ec6\u53ef\u89c1: [\u652f\u6301\u7ad9\u70b9\u5217\u8868](https://github.com/BowenZ217/novel-downloader/blob/main/docs/4-supported-sites.md)\n- \u66f4\u591a\u4f7f\u7528\u65b9\u6cd5, \u67e5\u770b [\u4f7f\u7528\u793a\u4f8b](https://github.com/BowenZ217/novel-downloader/blob/main/docs/5-tui-usage-examples.md)\n\n---\n\n### GUI \u6a21\u5f0f (\u56fe\u5f62\u754c\u9762)\n\n\u5c1a\u672a\u5b9e\u73b0\n\n---\n\n## \u4ece GitHub \u5b89\u88c5 (\u5f00\u53d1\u7248)\n\n\u5982\u9700\u4f53\u9a8c\u5f00\u53d1\u4e2d\u7684\u6700\u65b0\u529f\u80fd, \u53ef\u901a\u8fc7 GitHub \u5b89\u88c5:\n\n```bash\ngit clone https://github.com/BowenZ217/novel-downloader.git\ncd novel-downloader\npip install .\n# \u6216\u5b89\u88c5\u5e26\u53ef\u9009\u529f\u80fd:\n# pip install .[font-recovery]\n```\n\n---\n\n## \u6587\u6863\u7ed3\u6784\n\n- [\u9879\u76ee\u7b80\u4ecb](#\u9879\u76ee\u7b80\u4ecb)\n- [\u5b89\u88c5](https://github.com/BowenZ217/novel-downloader/blob/main/docs/1-installation.md)\n- [\u914d\u7f6e](https://github.com/BowenZ217/novel-downloader/blob/main/docs/2-configuration.md)\n- [settings.toml \u914d\u7f6e\u8bf4\u660e](https://github.com/BowenZ217/novel-downloader/blob/main/docs/3-settings-schema.md)\n- [\u652f\u6301\u7ad9\u70b9\u5217\u8868](https://github.com/BowenZ217/novel-downloader/blob/main/docs/4-supported-sites.md)\n- [TUI \u4f7f\u7528\u793a\u4f8b](https://github.com/BowenZ217/novel-downloader/blob/main/docs/5-tui-usage-examples.md)\n- [CLI \u4f7f\u7528\u793a\u4f8b](https://github.com/BowenZ217/novel-downloader/blob/main/docs/6-cli-usage-examples.md)\n- [\u590d\u5236 Cookies](https://github.com/BowenZ217/novel-downloader/blob/main/docs/copy-cookies.md)\n- [\u6587\u4ef6\u4fdd\u5b58](https://github.com/BowenZ217/novel-downloader/blob/main/docs/file-saving.md)\n- [\u6a21\u5757\u4e0e\u63a5\u53e3\u6587\u6863](https://github.com/BowenZ217/novel-downloader/blob/main/docs/api/README.md)\n- [TODO](https://github.com/BowenZ217/novel-downloader/blob/main/docs/todo.md)\n- [\u5f00\u53d1](https://github.com/BowenZ217/novel-downloader/blob/main/docs/develop.md)\n- [\u9879\u76ee\u8bf4\u660e](#\u9879\u76ee\u8bf4\u660e)\n\n---\n\n## \u9879\u76ee\u8bf4\u660e\n\n- \u672c\u9879\u76ee\u4ec5\u4f9b\u5b66\u4e60\u548c\u7814\u7a76\u4f7f\u7528, \u4e0d\u5f97\u7528\u4e8e\u4efb\u4f55\u5546\u4e1a\u6216\u8fdd\u6cd5\u7528\u9014\u3002\u8bf7\u9075\u5b88\u76ee\u6807\u7f51\u7ad9\u7684 robots.txt \u4ee5\u53ca\u76f8\u5173\u6cd5\u5f8b\u6cd5\u89c4\u3002\n- \u672c\u9879\u76ee\u5f00\u53d1\u8005\u5bf9\u56e0\u4f7f\u7528\u8be5\u5de5\u5177\u6240\u5f15\u8d77\u7684\u4efb\u4f55\u6cd5\u5f8b\u8d23\u4efb\u4e0d\u627f\u62c5\u4efb\u4f55\u8d23\u4efb\u3002\n- \u5982\u679c\u9047\u5230\u7f51\u7ad9\u7ed3\u6784\u53d8\u5316\u6216\u5176\u4ed6\u95ee\u9898, \u53ef\u80fd\u5bfc\u81f4\u7a0b\u5e8f\u65e0\u6cd5\u6b63\u5e38\u5de5\u4f5c, \u8bf7\u81ea\u884c\u8c03\u6574\u4ee3\u7801\u6216\u5bfb\u627e\u5176\u4ed6\u89e3\u51b3\u65b9\u6848\u3002\n",
"bugtrack_url": null,
"license": "MIT License\n \n Copyright (c) 2025 Saudade Z\n \n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n \n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n \n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n ",
"summary": "A command-line tool for downloading Chinese web novels from Qidian and similar platforms.",
"version": "1.4.5",
"project_urls": {
"Homepage": "https://github.com/BowenZ217/novel-downloader",
"Source": "https://github.com/BowenZ217/novel-downloader"
},
"split_keywords": [
"novel",
" web novel",
" qidian",
" biquge",
" downloader",
" parser",
" fiction",
" cli",
" automation",
" ebook"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "8873ebcc06b2e65248b328683fc8f034c1c3be2116d339d45c17d9d2b73b2777",
"md5": "81e8f563421c0ab0862a602522b3645f",
"sha256": "8f9209422adbd5ffed2639113100a74adcc00d6f5778f6fb51a2ae1ccc9e4c97"
},
"downloads": -1,
"filename": "novel_downloader-1.4.5-py3-none-any.whl",
"has_sig": false,
"md5_digest": "81e8f563421c0ab0862a602522b3645f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 261167,
"upload_time": "2025-07-12T01:11:29",
"upload_time_iso_8601": "2025-07-12T01:11:29.486897Z",
"url": "https://files.pythonhosted.org/packages/88/73/ebcc06b2e65248b328683fc8f034c1c3be2116d339d45c17d9d2b73b2777/novel_downloader-1.4.5-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d737b2b48afb5e41d4d46f3e7012dbe49eca55d9d8a98f209cbd923bacd32f86",
"md5": "3b09cbf2389ab6cd3a084870af8d9361",
"sha256": "ee702cab8f185f0f691078bf76f8c65720f53091a2f7aba42ee06e944efcc6be"
},
"downloads": -1,
"filename": "novel_downloader-1.4.5.tar.gz",
"has_sig": false,
"md5_digest": "3b09cbf2389ab6cd3a084870af8d9361",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 187891,
"upload_time": "2025-07-12T01:11:31",
"upload_time_iso_8601": "2025-07-12T01:11:31.129229Z",
"url": "https://files.pythonhosted.org/packages/d7/37/b2b48afb5e41d4d46f3e7012dbe49eca55d9d8a98f209cbd923bacd32f86/novel_downloader-1.4.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-12 01:11:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "BowenZ217",
"github_project": "novel-downloader",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "novel-downloader"
}