Crates.io | bcdown |
lib.rs | bcdown |
version | 0.2.2 |
source | src |
created_at | 2022-05-17 07:12:34.591166 |
updated_at | 2022-07-27 04:11:37.853406 |
description | Bilibili漫画下载器,written in Rust,支持epub pdf zip格式 |
homepage | |
repository | https://github.com/lihe07/bilibili_comics_downloader |
max_upload_size | |
id | 588187 |
size | 153,817 |
Bilibili漫画下载器,written in Rust
这个项目用来接替之前的python版
异步高性能
网络相关操作使用了基于tokio
的reqwests
,较多线程版有较大的性能提升
更加灵活的登录
工具支持 扫码登录 及 SESSDATA登录 两种登录方式,且能保存登录结果,无需每次重复登录
更完善的缓存功能
工具会缓存更多的内容以减少网络请求,缓存地址可配置,默认选取用户的文档文件夹
更灵活的导出
支持分话导出和合并导出,会自动添加Kindle等阅读器可识别的书签
目前支持epub,pdf和zip三种格式
工具共有如下几个命令:
bcdown info
- 显示配置信息,缓存大小,登录状态
使用示例:
bcdown info
ℹ 加载配置文件:D:\Documents\bcdown/config.toml
ℹ bcdown 版本: 0.2.1
ℹ 登录信息有效!
ℹ 用户名:[数据删除]
ℹ 漫币余额:[数据删除]
ℹ 缓存目录:D:\Documents\bcdown/cache
ℹ 缓存目录大小:4.629214677959681 GB
ℹ 默认下载目录:D:\Download
bcdown login
- 登录B漫账号,通过二维码或者sessdata
使用示例:
bcdown login -s [数据删除]
通过sessdata登录
ℹ 加载配置文件:D:\Documents\bcdown/config.toml
ℹ 登录信息有效!
ℹ 用户名:[数据删除]
ℹ 漫币余额:[数据删除]
bcdown login -q
通过扫描二维码登录
ℹ 加载配置文件:D:\Documents\bcdown/config.toml
▀ ██▀▀▀▄ ▀ ▄▄ █▄ ▀▄▄ ▀█▀█▄▀▄ ██▀▀█▄
▀▀ ▄▀ ▀ █ ▀ ▄ ▄▄▄▄▀▄█▀▀██ █ ▄█▀▀█
█ █▀█▄▄▀██▄ ▄▀▄▄▄▄▀▄▀▀▀▀█▀▀█▀ ▀▀▀
█▄█▀█▀██ ▄ ██▄ █▄ ██ ▄ ▄▀█▄ ██▀ ██
█▀ ▀▄▀▀█▀ █▀▄█▄ ▀█▄▄▄▀█▀▀▀ ▄▀▀▄▀ █▄
█ █▀█ █▄█ █▄ █▄▄ ▄▀ ██▄█▄ ▀▀█
▄ ▄▄▀▄▀ █▄▄▄ ▄▄▀▄██▄█▄▀█▀▀▀▀▄█▀ ▀█▀
█▀█ ▀▀▄███▀█▄▀█ ▀ ▀▄▀▄█ ██ ████▀ █▀
▄▄ █ ▀ █▄▄▀█▀█ ▄█▄▄▄ ▄▄▄█▀▀▄█▀█▀ █▀▀
█ ▄▄▀▄▀▄██▀ █ █▀ ▀ ▀▄█▄▀ ▄██▄▀█ ▀██
▀ ▀▀▀ ▀ ▄▀▄▄▀ ▀▀ █▄██▄▀▄▀▀▀ █▀▀▀██▀▀
█▀▀▀▀▀█ ▄▀ █▀██▀▀▄█▄▀ ▄ ▀ █ ▀ █▄▀█▀
█ ███ █ █ ▄▄▄█▀▄▄▀█▀ ▄█▄█▀▀███▀█▄▀▀▄
█ ▀▀▀ █ ▀ ▀▀▀▄ ▀█ █ ██▄█ ▀▀▄▀ ▄ ▀█
▀▀▀▀▀▀▀ ▀▀▀ ▀▀▀▀▀ ▀▀▀▀ ▀▀ ▀ ▀▀▀
✔ 二维码已生成,请扫描二维码登录
ℹ 如果显示错误,请手动访问:[链接省略]
⠇ 等待确认...
备注:建议在支持色彩和符号终端中执行,如Windows Terminal
bcdown clear
- 清空缓存文件夹
bcdown search [链接或ID]
- 搜索某个漫画,列出它的全部章节
bcdown list
- 列出缓存中的漫画
bcdown fetch [链接或ID] <--range [开始]-[结束],[开始]-,-[结束]>
- 将一个漫画下载到本地
使用示例:
bcdown fetch mc29911 --range 1-20,40-50,60-
下载 mc29911 第1话到第20话,第40话到第50话 和 第60话之后的所有到本地
``
bcdown export [链接或ID] --format [epub或pdf] <--range [开始]-[结束],[开始]-,-[结束]> <-s 单独导出每一话> <--output [输出位置]> <-g [组大小>]
- 导出一个本地漫画
和大部分rust crates一样,只需clone该存储库,之后执行cargo build --release
即可本地构建
备注:鉴于依赖项
printpdf
的特性,只有在添加--release
标签后,工具才会对PDF执行压缩
这个项目已经发布到crates.io
上了,因此可以通过cargo install bcdown
来安装
如果只是普通用户,可以下载编译好的可执行文件:Releases
由于kindle阅读器暂时不支持epub格式的电子书,而pdf格式又过于庞大,不便于传输,这里有几种常见解决方案:
使用 bcdown export XXXX -s -f pdf
分话导出较小的pdf文件(编码较慢)
在存储空间较小的设备上需要较多次的传输
使用 bcdown export XXXX -f epub
导出一个大的epub文件(比pdf快),之后使用 ebook-convert
, NeatConverter
等工具转换成 azw3 格式(这里推荐Neat Converter,对大文件支持比较好)
实测azw3拥有更好的压缩率,pdf(1.5G) > epub(300M) > azw3(150M)
由于不同的导出工具的区别,一些小功能可能会失效(如封面图片,标题等)图片和目录的显示已经经过测试,不会出现较大的问题
我的QQ:3525904273
这个工具只是个爬虫,不能下载没有解锁的漫画,因此解决不了钞能力的问题(
如果发现了Bug(可能会有很多,已经发现了不少),欢迎创建Issue
这个工具的更新会很频繁,建议保持使用最新版
由于没有限速功能,短时间内大量的网络请求可能会对B漫造成一定负载。建议不要频繁进行下载操作,尽管目前没有因下载而被封号的案例,但B漫拥有封禁的权力。使用本工具造成的一切损失请自行承担!