# 【ShadowLibrary_dll_v0.3.6o】
!!此工具诞生于OCR和AI训练数据的准备工作!!
!!禁止任何机构和个人以营利为目的使用本程序,包括用于电子版销售等经营性业务,或以会员制方式在网站上谋取利益。!!
+ 压缩包批量转换为pdf,充分利用多核CPU性能进行高速转换
+ 命令行运行,或者调用API,对压缩包、图像、pdf进行深入处理,不需要像别的工具一样占用鼠标点击pdg2pic。
+ 将pdg转换为图片,支持用户调节图像压缩率
+ 自动检测缺页并补充缺页
+ 解析bookinfo.dat和bookcontents.dat。按其中信息自动给pdf命名并添加目录
+ 支持自定义第三方目录源
+ 开源,可以直接使用源码
+ 提供简洁的API
+ 支持转换失败文件单独存储
+ 可运行于Linux,无需docker和图形界面
+ 效率最高的密码本,可解99%的压缩包并且速度最快
- 提供安装包,安装完直接在命令行运行。
- 提供Linux版,可以在Linux上运行。
- 增加webserver模式。
- 失败文件拷贝功能。将转换失败的文件集中拷贝到别的地方,在配置文件内开启。
- 提供最精确的密码表,速度快效率高。
- 解决解密模块内存泄漏问题。
- 改进图像压缩方法,总体来说,速度更快,体积更小。支持用户自主调整转换结果的压缩参数,对于PNG大图版原样输出不做变化。JPG支持用户调节压缩参数。
- 日志转储管理,默认5天一个日志,保留两星期内的日志。可以在config.ini自己配置周期。
- 修正标题获取逻辑 改进书籍状态判断 增加压缩包内文件完整性检查功能,改进解压逻辑 增加数据库链接异常处理 增加临时文件清理开关。
- 修复一种奇怪的分层图像引发的bug、修复pdf内图像错误导致的目录bug、修复zip内文件名太长导致的bug,修复某些情况下图像被压扁的问题。
### 参数说明
### 使用编译版
编译版的安装包。
编译版是把python代码编译成C再编译成二进制文件的,速度会稍微快一点点。
如果不是有改代码的需求,可以直接用编译版。
#### 1、安装
运行Shadowlibrary_installer.exe,根据提示安装。安装完之后会自动添加环境变量。
#### 2、执行
开启一个新的命令行
执行
会转换默认测试文件
#### 3、基础命令
打开配置文件
转换
### 从源码运行
#### 1、安装ShadowLibrary
如果之前使用过源码,环境可以不变,但是需要重新装一下依赖,因为使用了新的第三方库。
#### 2、运行
-c -o -p 都不是必须的,如果没有提供则读取config.ini中的参数。
就是说,这样也可以
直接执行会在pdf文件夹生成\[SophIA]99999999_五毒俱全转换测试文件5.0.zip对应的pdf
### 使用Linux版
使用Ubuntu 22.04,其他发行版应该也是可以的,不会有太大差别,不过我没试过。
整个过程不需要任何图形界面。所以不要为了wine专门去装图形界面。
#### 1、安装
1. 执行install.sh
这一步是为了安装必要的库 需要root权限
2. wine初始化
切换成普通用户。 切换成普通用户。切换成普通用户。
root跑wine可能会有莫名其妙的问题。
初始化wine的一些配置。
中间可能有报错,或者需要等待(看起来像卡住了)。都不用管。
当你看到一个windows的命令行出现时,说明成功了
退出windows命令行
3. 将shadowlib.tar.gz解压到你想存放的目录。
#### 2、使用
切换成普通用户。 切换成普通用户。切换成普通用户。
1. 直接转换
shadowlib.exe的路径必须是绝对路径
2. Server模式
最好还是用Server模式
-s 表示以server模式启动
--host 0.0.0.0 --port 8000 地址和端口 默认是这个,这个参数可以不加
-p 2 能同时接受几个转换请求,不加默认是1个。
!!!Server模式只是方便使用,这是一个非常简陋的webserver,是不适合直接提供服务的。
shadowlib.exe的路径必须是绝对路径
如何与server交互,详见client.py
## 下载
这次有三个文件:
1、安装包
不想用代码的可以用这个,安装完直接用。
具体用法看里面的README_zh-CN.html
MD5:9b33a3eb661340347256c6094f1b585c
下载
2、源代码
MD5:d78f7716ea321ead1661c64e87ad3246
下载
3、Linux版
MD5:a18bc9b7ca785a976ce091c9f764310c
下载
考虑到可能有人往编译版里偷偷加东西,除非是从我这边直接下载的,否则最好检查一下MD5。
详细使用说明请看README_zh-CN.html
如何添加书签看这里
!!此工具诞生于OCR和AI训练数据的准备工作!!
!!禁止任何机构和个人以营利为目的使用本程序,包括用于电子版销售等经营性业务,或以会员制方式在网站上谋取利益。!!
主要功能
+ 压缩包批量转换为pdf,充分利用多核CPU性能进行高速转换
+ 命令行运行,或者调用API,对压缩包、图像、pdf进行深入处理,不需要像别的工具一样占用鼠标点击pdg2pic。
+ 将pdg转换为图片,支持用户调节图像压缩率
+ 自动检测缺页并补充缺页
+ 解析bookinfo.dat和bookcontents.dat。按其中信息自动给pdf命名并添加目录
+ 支持自定义第三方目录源
+ 开源,可以直接使用源码
+ 提供简洁的API
+ 支持转换失败文件单独存储
+ 可运行于Linux,无需docker和图形界面
+ 效率最高的密码本,可解99%的压缩包并且速度最快
2025/01/10 v0.3.6o 发布
- 提供安装包,安装完直接在命令行运行。
- 提供Linux版,可以在Linux上运行。
- 增加webserver模式。
- 失败文件拷贝功能。将转换失败的文件集中拷贝到别的地方,在配置文件内开启。
- 提供最精确的密码表,速度快效率高。
- 解决解密模块内存泄漏问题。
- 改进图像压缩方法,总体来说,速度更快,体积更小。支持用户自主调整转换结果的压缩参数,对于PNG大图版原样输出不做变化。JPG支持用户调节压缩参数。
- 日志转储管理,默认5天一个日志,保留两星期内的日志。可以在config.ini自己配置周期。
- 修正标题获取逻辑 改进书籍状态判断 增加压缩包内文件完整性检查功能,改进解压逻辑 增加数据库链接异常处理 增加临时文件清理开关。
- 修复一种奇怪的分层图像引发的bug、修复pdf内图像错误导致的目录bug、修复zip内文件名太长导致的bug,修复某些情况下图像被压扁的问题。
### 参数说明
usage: shadowlib [-h] [-v] [-c CONVERT] [-o OUTPUT] [-p PROCESS] [-s] [--host HOST] [--port PORT] [--config]
options:
-h, --help show this help message and exit
-v, --version 显示版本号
-c CONVERT, --convert CONVERT
指定一个压缩包或者一个文件夹
-o OUTPUT, --output OUTPUT
指定pdf输出路径
-p PROCESS, --process PROCESS
进程数
-s, --server Server模式
--host HOST IP地址
--port PORT 端口
--config 打开配置文件
### 使用编译版
编译版的安装包。
编译版是把python代码编译成C再编译成二进制文件的,速度会稍微快一点点。
如果不是有改代码的需求,可以直接用编译版。
#### 1、安装
运行Shadowlibrary_installer.exe,根据提示安装。安装完之后会自动添加环境变量。
#### 2、执行
开启一个新的命令行
执行
shadowlib
会转换默认测试文件
#### 3、基础命令
打开配置文件
bash
shadowlib --config
转换
bash
shadowlib -c 压缩包或包含压缩包的文件夹 -o pdf存放路径 -p 进程数
### 从源码运行
#### 1、安装ShadowLibrary
conda create -n shadowlib python=3.12.0
conda activate shadowlib
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
如果之前使用过源码,环境可以不变,但是需要重新装一下依赖,因为使用了新的第三方库。
#### 2、运行
python shadowlibrary.py -c 压缩包或包含压缩包的文件夹 -o pdf存放路径 -p 进程数
-c -o -p 都不是必须的,如果没有提供则读取config.ini中的参数。
就是说,这样也可以
python shadowlibrary.py
直接执行会在pdf文件夹生成\[SophIA]99999999_五毒俱全转换测试文件5.0.zip对应的pdf
### 使用Linux版
使用Ubuntu 22.04,其他发行版应该也是可以的,不会有太大差别,不过我没试过。
整个过程不需要任何图形界面。所以不要为了wine专门去装图形界面。
#### 1、安装
1. 执行install.sh
这一步是为了安装必要的库 需要root权限
sudo sh install.sh
2. wine初始化
切换成普通用户。 切换成普通用户。切换成普通用户。
root跑wine可能会有莫名其妙的问题。
初始化wine的一些配置。
中间可能有报错,或者需要等待(看起来像卡住了)。都不用管。
umask 0 && xvfb-run -a sh -c "wine cmd.exe"
当你看到一个windows的命令行出现时,说明成功了
退出windows命令行
exit
3. 将shadowlib.tar.gz解压到你想存放的目录。
tar -zxvf shadowlib.tar.gz -C /自定义/目录/
#### 2、使用
切换成普通用户。 切换成普通用户。切换成普通用户。
1. 直接转换
shadowlib.exe的路径必须是绝对路径
umask 0 && xvfb-run -a sh -c "wine /你上一步解压的目录/shadowlib.exe -c 压缩包或包含压缩包的文件夹 -o pdf存放路径 -p 进程数"
2. Server模式
最好还是用Server模式
-s 表示以server模式启动
--host 0.0.0.0 --port 8000 地址和端口 默认是这个,这个参数可以不加
-p 2 能同时接受几个转换请求,不加默认是1个。
!!!Server模式只是方便使用,这是一个非常简陋的webserver,是不适合直接提供服务的。
shadowlib.exe的路径必须是绝对路径
umask 0 && xvfb-run -a sh -c "wine /你上一步解压的目录/shadowlib.exe -s --host 0.0.0.0 --port 8000 -p 2"
如何与server交互,详见client.py
## 下载
这次有三个文件:
1、安装包
[SophIA][bin]ShadowLibrary_dll_v0.3.6o.7z不想用代码的可以用这个,安装完直接用。
具体用法看里面的README_zh-CN.html
MD5:9b33a3eb661340347256c6094f1b585c
下载
2、源代码
[SophIA][src]ShadowLibrary_dll_v0.3.6o.7zMD5:d78f7716ea321ead1661c64e87ad3246
下载
3、Linux版
[SophIA][Linux]ShadowLibrary_dll_v0.3.6o.7zMD5:a18bc9b7ca785a976ce091c9f764310c
下载
考虑到可能有人往编译版里偷偷加东西,除非是从我这边直接下载的,否则最好检查一下MD5。
解压密码:iX0R3gNegq7m78juItGwY
详细使用说明请看README_zh-CN.html
如何添加书签看这里