GithubHelp home page GithubHelp logo

haoyi-han / moxmoe-epub-manga-repacker Goto Github PK

View Code? Open in Web Editor NEW
42.0 1.0 2.0 173 KB

A manga repacker of EPUB comics downloaded from vol.moe/mox.moe/kox.moe.

License: MIT License

Python 92.94% Makefile 3.23% PowerShell 3.83%
epub manga repacker mox vol kox

moxmoe-epub-manga-repacker's Introduction

Mox.moe Epub Manga Repacker

English | 中文

Declaration

Attention! This project does not provide manga document download services. You still need to download manga through the free or paid services provided by the website.

Attention! This project is only applicable to EPUB documents downloaded from the website Kox.moe or its mirror sites. The developer is not responsible for documents obtained from other sources if the conversion fails.

Attention! This project follows the MIT licence and does not generate any advertising revenue. Anyone can use it for free, but please refrain from promoting this project on manga websites to avoid unnecessary legal disputes. The developer is happy to see this project serve everyone.

If you encounter any issue during usage, please submit it, and I will do my best to resolve it within my knowledge.

Principle

The design concept of this project is to first unpack the EPUB document as a ZIP archive, rename each page's image files according to the numerical order in the HTML names, and then package the image files into a CBZ document.

This project can convert single or multiple manga files. It can also maintain the original directory structure when converting manga saved in complex directory structures.

Usage

Clone this project using the following command:

git clone https://github.com/Haoyi-Han/Moxmoe-Epub-Manga-Repacker.git
cd Moxmoe-Epub-Manga-Repacker

The project configuration file format is as follows:

[DEFAULT]
InputDir =  "path/to/your/input/folder"
OutputDir = "path/to/your/output/folder"
CacheDir =  "path/to/your/cache/folder"
Exclude = [folders & files to exclude in the paths you provide]
UseExtern7z = false
Extern7zExec "path/to/your/7z/executable"

Copy the manga document (or entire folder) to the folder pointed to by InputDir. Attention! Please avoid using special Unicode characters other than common symbols, letters, numbers, and CJK characters in the naming of subfolders and files.

Run the main.py script:

python main.py

The screenshot of the program during execution is as follows (not the latest version, for rough reference).

Wait for the program to finish running. Afterward, you can enter the folder pointed to by OutputDir to check the conversion results.

Build

It is recommended to use Nuitka to build the executable application. On the Windows platform, run make.ps1 build; on Unix platforms, run make build. Afterward, the built one-file program can be found in the build folder.

You can use make.ps1 help or make help to view the supported command help.

To ensure the proper operation of this program, you need to create a config.toml configuration file in the directory where the executable file is located and complete the specified directory paths in the configuration file.

For the Windows platform, as an optional step, if you wish the program to display progress synchronously on the taskbar during runtime, you will need to copy the tl.tlb file from the repository to the directory where the executable file is located. This file is a link library file provided by Microsoft to control the taskbar behavior, and you can also download it manually.

Stargazers over time

Stargazers over time

Acknowledgments (Project Inspiration)

GeeKaven/vol-moe-comic-scirpt: Main code logic reference

yeeac/epub-comic-repacker: Auxiliary code logic reference

Zeal-L/BiliBili-Manga-Downloader: Reference for writing ComicInfo.xml

moxmoe-epub-manga-repacker's People

Contributors

haoyi-han avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

moxmoe-epub-manga-repacker's Issues

新版本无法进行转换

你好,使用新版时,双击exe文件后会短暂跳出一个窗口随后自动关闭,不会对文件进行转换。
旧版本却没有这个问题。

文件名处理异常

如题,同一部漫画的文件名中出现「.」点号时会导致打包文件名冲突。在该问题解决前,推荐手动删除漫画文件名中的「.」点号。

作者你好, 最近在Mox下载的漫画提取问题? AttributeError: 'NoneType' object has no attribute 'group'

image

以前的漫画文件尝试了提取是正常的, 这个是最近下载的, 不知道出现了是什么问题, 谢谢作者的辛苦工作了!

问题报告:
Last login: Wed Feb 15 22:00:26 on ttys001 wq@192 夫妻甜蜜物语 % python3 MoeKepub2Cbz.py ============> 开始初始化程序 已完成文件列表抽取。 输入目录为: /Volumes/HDD/Comic/夫妻甜蜜物语 输出目录为: /Volumes/HDD/Comic/夫妻甜蜜物语/output 已完成目录结构复制。 ============> 开始提取图片并打包文件 Mox.moe |⚠︎ | (!) 0/180 [0%] in 0.1s (0.00/ Traceback (most recent call last): File "/Volumes/HDD/Comic/夫妻甜蜜物语/MoeKepub2Cbz.py", line 139, in <module> bar.text = comicNameExtract(file_t) ^^^^^^^^^^^^^^^^^^^^^^^^ File "/Volumes/HDD/Comic/夫妻甜蜜物语/MoeKepub2Cbz.py", line 57, in comicNameExtract return re.search(r'(\[Mox.moe\]|\[Mox\])(.+?)\.+?', str(comic_file.stem)).group(2) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'group' wq@192 夫妻甜蜜物语 %

采用多线程转换时可能造成输出内容混乱

如题,采用多线程转换时,当转换文件数量较大时,每个输入文件对应的输出文件中可能混有其他输入文件的图片内容,且存在错页等问题。
由此,最新的发布版本不建议使用多线程功能(单线程测试正常),该问题将在下个版本中得到修复或改进。

元文件中提取的文件名存在非法字符

如题,EPUB 文件的 OPF 数据元文件中规定的作者名和作品名中可能存在特殊字符,直接用于重命名会出现错误,需要增加判别过程,并用类似的字符替代。

Two comics books repack failed

The following two comics books repack failed, resulting in the incorrect page order.

  • 藤本樹短篇集 22-26: 人魚狂想曲
  • 藤本樹短篇集 22-26: 預言的那由多

圖片

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.