Skip to content

Repository files navigation

JMComic 禁漫下载器 AstrBot 插件

通过数字 ID 下载 JMComic 漫画,支持导出为 PDF 或 ZIP 格式并直接发送给用户;同时支持详情查看、封面发送、站内搜索、排行榜、分类浏览等功能。

功能特性

  • 🔢 通过漫画数字 ID 一键下载
  • 📄 支持 PDF(合并图片)和 ZIP(打包图片)两种导出格式
  • 💾 智能缓存管理,已下载漫画直接发送
  • 📨 搜索、排行榜、分类、缓存列表均以合并转发消息形式展示
  • 🔍 站内搜索漫画
  • 📈 日/周/月排行榜
  • 📂 按分类浏览漫画
  • ℹ️ 查看漫画详情与封面
  • 🔧 可视化配置(代理、页数限制、图片质量、搜索显示条数等)
  • 📊 缓存列表查看与清理
  • 🖥️ WebUI 缓存管理,支持漫画详情弹窗

安装

1. 安装依赖

pip install -r requirements.txt

依赖列表:

  • jmcomic>=2.7.0 — JMComic 下载核心库
  • Pillow>=9.0.0 — 图片处理(PDF 生成)
  • pycryptodome>=3.0.0 — API 加密支持

2. 部署插件

astrbot_plugin_jmcomic 整个文件夹复制到 AstrBot 的 data/plugins/ 目录下。

3. 启用插件

在 AstrBot WebUI 的插件管理页面启用本插件。

使用方法

基本指令

指令 说明
/jm <漫画ID> 下载漫画并发送
/jmview <漫画ID> 查看漫画详情
/jmcover <漫画ID> 发送漫画封面
/jmsearch <关键词> [页码] 站内搜索漫画
/jmrank <day|week|month> [页码] 查看日/周/月排行榜
/jmcategory <分类> [子分类] [页码] 按分类浏览漫画
/jmhelp 显示使用帮助
/jmcache 查看已缓存的漫画列表
/jmclear 清空所有缓存

使用示例

用户: /jm 350234
机器人: 📖 漫画「XXX」共 32 页。
        请选择导出格式(回复数字):
        1️⃣  PDF(合并为一个文件)
        2️⃣  ZIP(打包所有图片)
用户: 1
机器人: ⬇️ 开始下载「XXX」(PDF)…
机器人: [发送 PDF 文件]

查看详情:

用户: /jmview 350234
机器人: 📖 标题:XXX
        🆔 ID:350234
        ✍️ 作者:Author
        🏷️ 标签:标签1, 标签2
        📄 总页数:32
        ...

站内搜索与排行榜:

用户: /jmsearch 無修正 2
机器人: 🔍 站内搜索「無修正」
        📄 第 2/X 页,本页 80 条
        1. 「XXX」(ID: 350234)
        2. 「YYY」(ID: 350235)
        ...

用户: /jmrank week
机器人: 🏆 周排行
        📄 第 1/X 页,本页 80 条
        1. 「AAA」(ID: 123456)
        ...

指令别名

  • /jm 也可用 /JM/jmcomic
  • /jmview 也可用 /jmv
  • /jmcover 也可用 /jmcov
  • /jmsearch 也可用 /jms
  • /jmrank 也可用 /jmr
  • /jmcategory 也可用 /jmcg
  • /jmhelp 也可用 /jmh
  • /jmcache 也可用 /jmc
  • /jmclear 也可用 /jmcl

配置说明

在 AstrBot WebUI 的插件配置页面可直接修改以下参数:

配置项 类型 默认值 说明
下载路径 文本 空(自动) 自定义下载存储路径,留空使用 AstrBot 数据目录
最大缓存数 数字 5 超出时自动清理最早下载的漫画
最大页数 数字 50 单次下载页数上限,超出则拒绝下载
默认导出格式 选择 ask(询问) 始终导出 PDF / ZIP,或每次询问用户
HTTP 代理 文本 http://127.0.0.1:7890
图片格式 选择 空(原格式) 强制输出格式:.jpg / .webp / .png
图片解密 开关 开启 是否解密/反混淆图片(通常保持开启)
搜索显示条数 数字 10 搜索/排行榜结果每页最多显示条数

WebUI

本插件提供 AstrBot Pages 内嵌 WebUI,路径为:

AstrBot 控制台 → 插件 → JMComic 漫画下载器 → 缓存管理

在 WebUI 中你可以:

  • 查看所有已缓存的漫画
  • 点击任意缓存卡片,弹出漫画详情窗口(显示封面、作者、标签、章节等)
  • 直接下载缓存的 PDF/ZIP 文件
  • 删除指定缓存

文件存储

  • 下载的漫画图片存储在下载目录中,以漫画 ID 为子目录名
  • 导出的 PDF/ZIP 文件也保存在下载目录中
  • 默认路径:AstrBot/data/plugin_data/astrbot_plugin_jmcomic/

注意事项

  • 下载时间取决于漫画页数和网络状况,请耐心等待
  • 已缓存的漫画会直接发送文件,无需重新下载
  • 搜索、排行榜等查询结果较多时,会以合并转发消息的形式发送(仅支持 OneBot v11 / aiocqhttp 协议端)
  • 部分消息平台可能对文件大小有限制
  • 建议配置代理以获得更好的访问速度

致谢

本插件的漫画下载核心能力基于 JMComic-Crawler-Python 项目,感谢该项目作者提供的完整、优秀的禁漫爬虫与下载库,本插件的搜索、排行榜、分类浏览、漫画详情获取等功能均依赖该库实现。

About

AstrBot plugin for downloading JMComic comics, supports PDF/ZIP export

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages