包含一些可用的epub工具,用于epub文件的重构、解密、加密。
重构epub为规范格式_v2.8.3.py
->utils\reformat_epub.py
作用:见原文件名。
原始的百度贴吧帖子链接:遥遥心航的帖子。
遥遥心航提供的原始文件:蓝奏云网盘链接 密码:i89p
。重构epub并反文件名混淆.py
->utils\decrypt_epub.py
作用:见原文件名。重构epub并加入文件名混淆.py
->utils\encrypt_epub.py
作用:见原文件名。epub_tool.py
作用:对上述工具的整合的命令行程序。epub_tool_TKUI.py
作用:对上述工具的整合的带操作界面的程序。
注:重构会严格保证文件夹分类和文件名后缀。[#13]
python源码执行
- 下载python3.8;
- 使用
git clone https://github.com/cnwxi/epub_tool.git
克隆本仓库;或直接在网页下载源码压缩包,解压后得到py文件; - 准备依赖库,在终端输入
python -m pip install -r requirements.txt
; - 执行py文件。
- 单个工具执行:
- 使用命令行执行
python 解压目标文件夹/epub_tool/utils/**.py
或修改py为pyz双击运行。
- 整合工具执行:
- 使用命令行执行
python 解压目标文件夹/epub_tool/epub_tool.py -i 需要处理的epub文件或者所在文件夹 -e/d/r
其中e、d、r为不同的处理模式,分别是混淆-e
、反混淆-d
、重新格式化-r
。 - 也可使用命令行执行
python 解压目标文件夹/epub_tool/epub_tool.py -i 需要处理的epub文件或者所在文件夹 -m 处理模式
,处理模式为e、d、r。
- 单个工具执行:
命令行程序
- 从releases下载对应的可执行文件;
- Windows可以直接双击可执行文件;
- 或使用命令行工具
CMD、Power Shell、Terminal
执行; - 如提示无权限运行,可在终端输入
chmod +x /可执行文件所在路径
(macOS:还需进入“设置-安全性与隐私-通用-允许从以下位置下载的APP”点击“仍要打开”)
参考如图:
- 参数列表参考如下:
-i 后面接需要处理的epub文件或所在文件夹;
-e 无需后接任何参数,指定程序对epub进行混淆处理;
-d 无需后接任何参数,指定程序对epub进行反混淆处理;
-r 无需后接任何参数,指定程序对epub进行格式化处理。
-m 后接指定的处理模式,e、d、r。(可选,效果同上-e、-d、-r) - 现在输入为文件夹路径时会提醒选择文件执行edr操作或所有文件执行edr操作。
-
举例:
在可执行文件所在文件夹打开命令行工具(或打开命令行工具后切换到可执行文件所在文件夹)。
可使用的命令行工具如cmd/powershell/terminal等。
输入Windows_epub_tool.exe -i epub文件路径或所在文件夹路径 -d
或Windows_epub_tool.exe -i epub文件路径或所在文件夹路径 -m d
并回车(注意不同平台可执行文件名不一致)。
此命令行指定程序读取指定目录下所有epub文件,并对这些文件进行反混淆。
Windows系统CMD命令行操作演示
可视化界面程序
(注:同样会在程序所在路径生成log日志文件)
(Mac参考命令行程序教程授予权限;Windows若报告病毒文件请忽略警告,允许文件保留本地。)
epub无法正常规范/混淆/反混淆
1、优先解压文件,查看其中content.opf文件,检查是否存在问题。若无法解决,在Issues区提交issue并附带原文件。[#8 #10]
2、若下载文件名带“精品”二字,且解压后文件夹内包含“/META-INF/encryption.xml”,检查此文件内是否有“ZhangYue.Inc”字样。
若满足则此文件为掌阅加密书籍,为规避版权问题,此处不提供解密程序,请使用「掌阅」打开阅读。[#19]
点击以展开
更新图标。
修复在mac上的日志文件写入位置,更改日志写入方式,清理原始脚本中重复的无效循环。
Update build.yml。#17
调整UI、取消push自动构建。
修复UI显示问题,分支整合。
创建新分支TKUI,实现基本UI DEMO,功能已整合。
添加文件夹手动选择需要处理文件,输入文件序号进行选择,不再是默认处理文件夹内全部epub文件,添加了输入检测提示,错误后会返回重新输入。#15
修复未处理输入时拖入文件带引号导致的文件路径检查错误。
因额外依赖库未打包到可执行文件,重新打包可执行文件。
更新相关使用教程。
为避免有人不会使用命令行工具,更新Windows系统下相关操作的基础流程。
程序允许直接双击执行,后续再输入参数。
对应操作忽略固定后缀跳过文件处理。_encrypt、_decrypt、_reformat
修复混淆ID导致的反混淆不完全。
修复存在异常opf时程序闪退问题。
更新日志记录。
整合代码,使用命令行批量处理epub文件。
支持输入单个epub文件或epub文件所在文件夹,支持子目录遍历。
修改输出路径,现为原epub文件同级路径,通过添加不同后缀encrypt\decrypt\reformat
区分原文件和处理后文件。
代码更新,使用相似度计算覆盖opf文件中未混淆的其他文件名情况。
更新yml文件。#9
针对cover页面未混淆的情况做更改。
修改自动发布逻辑,修改py文件不触发CI,仅修改yml后触发。修改yml,无需手动执行才执行发布。
修改主函数逻辑,防止epub文件不存在导致的程序崩溃。#4
加入CI自动构建。#5
加入CI自动发布。
修正重构epub为规范格式_v2.8.3.py
中生成的content.opf文件内容格式。#3
更改文件输出路径。#2
针对多看~slim文件进行修改,处理html中使用../
、./
、/
开头的链接。
初始化仓库。
感谢以下用户对此项目的贡献: