Skip to main content

基于NoneBot2的JM漫画下载插件

Project description

nonebot-plugin-JMDownload

✨ NoneBot 插件简单描述 ✨

license pypi python python

✨ 基于 NoneBot2 的 JM 漫画下载插件,支持下载漫画并转换为 PDF 格式。本项目使用 DeepSeek 辅助完成编写,代码可能需要进一步优化。

📦 功能特点

  • ✅ 支持通过序号下载 JM 漫画
  • ✅ 自动将下载的图片转换为 PDF 格式
  • ✅ 支持QQ群文件直接上传
  • ✅ 完善的错误提示系统
  • ✅ 自动清理临时文件

🛠️ 安装方法

前置要求

  • 已安装 NoneBot 2.0 框架
  • Python 3.8+ 环境

安装步骤

  1. 安装必要依赖
pip install jmcomic -i https://pypi.org/project -U
  1. 使用 pip 安装插件(推荐)
pip install nonebot-plugin-jmdownload
  1. 手动安装(备选)
    • 下载本插件代码
    • 解压至 plugins 目录
    • 安装依赖 pip install -r requirements.txt

安装完成后,在 nonebot2 项目的 pyproject.toml 文件中添加插件名称:

plugins = ["nonebot_plugin_jmdownload"]

⚙️ 使用方法

基础配置

  1. NoneBot2 项目的 .env 文件中可用配置:
配置项 是否必须
jm_config_path "data/nonebot_plugin_jmdownload/config.yml"
  1. 首次运行时会自动生成配置文件,包含以下内容:
# Github Actions 下载脚本配置
version: '1.0'

dir_rule:
  base_dir: data/nonebot_plugin_jmdownload/downloads  # 基础存储目录
  rule: Bd_Atitle_Pindex           # 目录命名规则

client:
  domain:
    - www.jmapiproxyxxx.vip
    - www.18comic-mygo.vip
    - 18comic-MHWs.CC
    - 18comic.vip
    - 18comic.org

download:
  cache: true    # 文件存在时跳过下载
  image:
    decode: true  # 还原被混淆的图片
    suffix: .jpg  # 统一图片后缀格式
  threading:
    # 数值大,下得快,配置要求高,对禁漫压力大
    # 数值小,下得慢,配置要求低,对禁漫压力小
    # PS: 禁漫网页一般是一次请求50张图
    batch_count: 45

更多配置选项请参考 JMComic-Crawler-Python 项目文档

🚀 命令使用

一级指令 二级指令 参数 说明
/jm download <序号> 下载指定序号的漫画
/jm 下载 <序号> 下载指定序号的漫画

⚠️ 注意事项

  1. 请确保机器人具有足够的存储空间
  2. 下载完成后会自动清理临时文件
  3. PDF 文件生成后会自动发送给用户

❓ 常见问题

Q: 下载失败怎么办? A: 请检查网络连接和配置文件中的域名是否可用。

Q: 为什么下载速度很慢? A: 目前需要获取所有图片后再进行转换,会造成阻塞并且导致下载速度较慢。

Q: 为什么转换 PDF 很慢? A: 转换速度取决于图片数量和大小,请耐心等待。

📝 更新日志

v1.4.0 (2025-04-29)

  • 优化多线程PDF转换系统,根据系统负载动态调整线程数
  • 增强图片损坏检测功能,支持多种检测方式
  • 改进日志系统,提供更详细的性能统计和错误信息
  • 优化内存管理,减少大型漫画处理时的内存占用
  • 提升下载重试机制的稳定性

v1.3.2 (2025-03-28)

  • 修复依赖问题

v1.3.1 (2025-03-28)

  • 添加损坏图片探测
  • 优化内存处理功能,防止大文件转换时内存溢出
  • 优化单核处理性能,提升PDF转换效率

v1.3.0 (2025-03-26)

  • 修复 PDF 转换问题
  • 优化 PDF 转换速度

v1.2.0 (2025-03-25)

  • 下载使用异步
  • 优化阻塞问题

v1.0.0 (2025-03-25)

  • 初始版本发布
  • 支持基本的下载和 PDF 转换功能
  • 添加自动清理功能
  • 支持 QQ 群文件上传

🎯 开发计划

  • 优化 PDF 转换速度
  • 优化下载速度及阻塞问题
  • 体验必须优化!
  • 添加下载进度显示
  • 支持批量下载功能

🤝 贡献指南

欢迎提交 Issue 和 Pull Request 来帮助改进这个项目。

📄 许可证

本项目采用 BSD 3-Clause License 开源许可证。

🙏 致谢

⚖️ 免责声明

本项目仅供学习交流使用,请勿用于非法用途。使用本项目所造成的任何后果由使用者自行承担。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot_plugin_jmdownload-1.5.0b3.tar.gz (23.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nonebot_plugin_jmdownload-1.5.0b3-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_jmdownload-1.5.0b3.tar.gz.

File metadata

File hashes

Hashes for nonebot_plugin_jmdownload-1.5.0b3.tar.gz
Algorithm Hash digest
SHA256 d76f6d53b03e3fc1f9b5e3cd2bd097b8fe5d9bb25e9f66ce102d346bcd7a3cec
MD5 f0cadd0d404815cfdb5f5e3109caa286
BLAKE2b-256 9b00b67b58a98e6ebb93d2548a72cf93b3077d429c13b5e03ce4c260262d0abc

See more details on using hashes here.

File details

Details for the file nonebot_plugin_jmdownload-1.5.0b3-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_jmdownload-1.5.0b3-py3-none-any.whl
Algorithm Hash digest
SHA256 cb01ba65e759b09d993725f8de586f482a5cf185e65d573986846bf96d547f41
MD5 3eb740f5e5ad1ee56057f63914aa87d0
BLAKE2b-256 a86c79fbc5da619d1a0effee12530178d50e7dcf94ddabd3f34580d10f10ca65

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page