最近发现E站收藏夹里的漫画消失的有亿点点多,看了一下很多都是被版权投诉删掉了,不禁联想到当初某P开头网站把我的收藏夹一夜清零的惨案,看来一切网络收藏夹终究还是不靠谱,只有把原档案下载下来自己存放才是终级解决方案,经过搜索发现LANraragi这个工具完美符合我的需求,它支持多种文件格式,可以自动生成封面,通过默认和第三方插件,可以实现从多个网站自动获取Tag、标题、作者等元信息,甚至支持通过程序本身直接从相应网站下载漫画并自动入库归档。入库的漫画不仅可以通过Web方便的从全平台进行访问,还可以通过各个平台的客户端获取更好的体验。
2023.3.15更新:新增nHentai CF Bypass插件配置教程
Debian 11
环境下进行操作。提供的命令均以root用户执行。
程序介绍
项目地址:https://github.com/Difegue/LANraragi
汉化版项目地址:https://github.com/uparrows/LANraragi_cn
官方文档:https://sugoi.gitbook.io/lanraragi/v/dev
Demo:https://lrr.tvc-16.science/
目前程序具体支持阅读的漫画格式如下:zip/cbz、rar/cbr (最高仅支持到RAR4)、tar.gz/cbt、lzma、7z/cb7、xz、pdf、epub (如果从Web端阅读,只能看到书中的图片内容)
通过插件,支持包括但不限于以下几个来源的元信息导入:
- Currently supported out of the box are:
- E-Hentai/Exhentai
- nHentai
- Chaika.moe
- .json files embedded into your Archives from the eze userscript
- .json files embedded into your Archives from HDoujin Downloader ...and more!
截图
Docker安装
官方文档中给了多种安装方式,这里只采用最简单的Docker方式安装,其他方式请参照官方文档。
安装docker
curl -sSL https://get.docker.com/ | sh
systemctl start docker
systemctl enable docker
创建必要文件夹
mkdir -p /mnt/docker/lanraragi/content
mkdir -p /mnt/docker/lanraragi/database
上面两条命令分别创建了程序的内容库和数据库文件夹,内容库用来存放漫画文件和缩略图,数据库用来存放元信息等数据文件。这两个路径可以自行更改,如果更改这两处路径,在下面运行镜像的命令中对应位置也要更改。
运行镜像
推荐直接运行B站UP主@浅笑一夏的汉化版本,虽然目前有部分区域文字显示乱码,但是不影响功能使用。全中文的后台管理界面看起来还是要省力很多,汉化作者也在原版的基础上添加了几个实用插件(比如直接读取从EhViewer下载的漫画压缩包中的.ehviewer
文件获取元信息),运行以下命令:
docker run --name=lanraragi --restart=always -p 3001:3000 \
--mount type=bind,source=/mnt/docker/lanraragi/content,target=/root/lanraragi/content \
--mount type=bind,source=/mnt/docker/lanraragi/database,target=/root/lanraragi/database \
dezhao/lanraragi_cn
当然如果你英语阅读无障碍,并且追求第一时间体验原作者的最新版本,你也可以运行原作者提供的镜像(下面这段代码和上面这段代码2选1,不要重复运行):
docker run -e LRR_UID=0 -e LRR_GID=0 --name=lanraragi --restart=always -p 3001:3000 \
--mount type=bind,source=/mnt/docker/lanraragi/content,target=/home/koyomi/lanraragi/content \
--mount type=bind,source=/mnt/docker/lanraragi/database,target=/home/koyomi/lanraragi/database \
difegue/lanraragi
其中/mnt/docker/lanraragi/content和/mnt/docker/lanraragi/database分别是上面创建必要文件夹部分创建的两个文件夹路径,请根据自身需求做出更改
运行成功后,浏览器访问http://ip:3001
就可以了看到如下画面了
点击上方的管理员登录(Admin Login),输入默认密码kamimamita
即可登录,登录后可以进设置(Settings)修改默认密码来保证安全。
上传漫画
程序支持这几种途径上传漫画:
网页直接上传
登录后,点击网页上的上传档案(Add Archives),进入的网页里有两种上传方法:
- 直接从本地上传
- 输入Chaika.moe/e-hentai画廊链接自动下载(目前仅支持这从两个网站自动下载文档,且从e-hentai下载需要事先在设置-插件设置-登陆插件-E-Hentai插件中设置好cookie,并且请注意:从e-hentai自动下载文档会耗费账号内的GP余额)
网页会显示上传/下载进度条,上传完成后可以直接点击右侧/下册提示进入元数据编辑页面,也可以以后再编辑。
复制文件入库
可以把下载好的文件通过ftp等工具直接上传到上面步骤中创建的内容库文件夹内,程序会自动识别入库。
编辑元数据
右击任意漫画封面,选择编辑元数据(Edit Metadata)即可进入元数据编辑页面
理论上讲,程序会取文件名作为标题,如果标题正确的话,一般选择对应的插件后点击Go!
按钮,标签(Tag)信息就会被自动搜索填入,当然,你也可以手动粘贴画廊链接(插件支持范围内)到最下方输入框再点击Go!
按钮,插件便会忽略标题,从你输入的画廊链接获取Tag信息,至于更细致的设置,比如从默认表站还是里站获取、是否保存日/英文标题、漫画入库时插件是否自动运行等等,请进入设置(Settings)-插件配置(Plugin Configuration)-元数据插件(Metadata Plugins)自行详细设置。
部分插件设置(可选)
E-Hentai登录插件
如果你没有以下需求,可以不设置这个插件:
- 需要利用LANraragi程序本身自带的下载功能,直接从E-Hentai/ExHentai耗费GP下载漫画文件。
- 需要访问里站(ExHentai)内容获取仅里站可见的漫画的Tag信息。(表站E-Hentai的Tag信息默认就能获取,无需额外配置)
如果你拥有以上需求之一,请参照下面步骤设置插件:
打开插件设置页面备用
在登录状态下的首页,通过设置(Settings)-插件设置(Plugin Configuration)-登陆插件(Login Plugins)-E-Hentai插件-插件配置(Plugin Settings)进入插件设置页面,挂着备用。
打开E-Hentai/ExHentai获取
此处分以下几种情况(以下称E-Hentai为表站,ExHentai为里站),请先确定自身你属于哪种情况,再按下文步骤获取相应cookie:
- 你的账号既没有访问里站的权限,也没有在表站访问里站内容的权限(捐赠用户特权)。那就需要访问表站,获取
ipb_member_id cookie
和ipb_pass_hash cookie
。此种状态下,你只能使用”在程序内利用自带的下载功能直接从E-Hentai耗费GP下载漫画文件“这一功能。 - 你的账号没有访问里站的权限,但是拥有在表站访问里站内容的权限(捐赠用户特权)。那就需要访问表站,获取
ipb_member_id cookie
和ipb_pass_hash cookie
和star cookie
。此种状态下,你可以使用程序内涉及到表站和里站的全部功能。 - 你的账号拥有访问里站的权限,且服务器IP地址是欧美地区IP。那就需要访问里站,获取
ipb_member_id cookie
和ipb_pass_hash cookie
。此种状态下,你可以使用程序内涉及到表站和里站的全部功能。 - 你的账号拥有访问里站的权限,但是服务器IP地址是非欧美地区IP。那就需要访问里站,获取
ipb_member_id cookie
和ipb_pass_hash cookie
和igneous cookie
。此种状态下,你可以使用程序内涉及到表站和里站的全部功能。
不论你是哪一种情况,获取的方法都是类似的,根据需要自行打开表/里站首页,按F12打开开发者工具,找到应用程序(Application)
选项卡(找不到就到”>>“里面找),火狐的话应该是在存储
选项卡。找到里面的Cookie
处(如图),点击相应链接,右侧就会出现相应内容,我的情况属于情况4,需要获取ipb_member_id cookie
和ipb_pass_hash cookie
和igneous cookie
,对应名称后的值内的内容,就是我们需要获取的内容,分别复制出来填入之前打开备用的插件设置页面内,然后点击网页底端的保存插件配置(Save Plugin Configuration)即可。
nhentai登录插件
nhentai网站加了CF的人机验证盾,所以必须配置在nhentai登陆插件中配置好浏览器ua
、csrftoken
、cf_clearance
这三个变量才可以让程序顺利从nhentai获取tag。
但是需要注意的是,只有当上面那三个cookie和获取cookie时的IP地址匹配时,才能成功穿过CF盾的验证,使插件生效。所以,获取nhentai的csrftoken
、cf_clearance
这两个变量时,必须和运行LANraragi的VPS的拥有相同的IP地址(如果你是本地环境部署就不必在意这个,直接模仿上文方法获取就好),为了达成这个条件,你有两种选择:
- 在运行LANraragi的VPS上进行获取
- 设法在运行LANraragi的VPS上建立网络隧道,本地连接上隧道获取和VPS相同的网络环境后,在本地进行获取(本方法本文不再赘述)
在这里我选择第一种情况。
csrftoken
、cf_clearance
这两个cookie倒是也有两个程序(cf-clearance、CF-Clearance-Scraper)能够直接获取,不过我用他们Readme里的范例运行了一下都没成功。有能力的可以自己研究一下。
所以我这里提供一个比较笨的办法:Dokcer运行docker-firefox镜像,这个镜像允许你在本地的浏览器上远程访问运行在VPS上的firefox浏览器,然后你就可以按照上文中Ehentai的cookie获取方式获取nhentai的csrftoken
、cf_clearance
这两个cookie。
打开插件设置页面备用
在登录状态下的首页,通过设置(Settings)-插件设置(Plugin Configuration)-登陆插件(Login Plugins)-nHentai CF Bypass-插件配置(Plugin Settings)进入插件设置页面,挂着备用。
获取cookie
运行docker-firefox镜像
docker run -d \
--name=firefox \
-p 5800:5800 \
-v /docker/appdata/firefox:/config:rw \
jlesage/firefox
运行成功后,浏览器访问http://ip:5800
即可看到Firefox浏览器的画面,像远程桌面一样操作就可以。
在远程的Firefox中打开https://useragentstring.com/,获取到自己的ua,填入Browser UserAgent string中。
在远程的Firefox中打开nhentai,手动过一下CF的人机验证(一般点个对勾就过了)
然后按F12打开开发者工具,在存储
选项卡。找到里面的Cookie
处,点击相应链接,按照和上文中Ehentai部分相似的方法获取csrftoken
、cf_clearance
这两个cookie,分别复制出来填入之前打开备用的插件设置页面内,然后点击网页底端的保存插件配置(Save Plugin Configuration)即可。
Firefox镜像用完最好及时stop掉,不然挺占资源的,即便你不在乎资源占用,最好也加个访问密码,避免被人扫到成为万人骑
程序升级
Docker方式部署的程序升级也很方便,因为漫画文件、数据库内容文件都在容器外,不会丢失,所以直接拉取最新镜像删除重建容器即可升级到最新版本。
升级汉化版本:
docker pull dezhao/lanraragi_cn
docker stop lanraragi
docker rm lanraragi
docker run --name=lanraragi --restart=always -p 3001:3000 \
--mount type=bind,source=/mnt/docker/lanraragi/content,target=/root/lanraragi/content \
--mount type=bind,source=/mnt/docker/lanraragi/database,target=/root/lanraragi/database \
dezhao/lanraragi_cn
升级英文原版:
docker pull difegue/lanraragi
docker stop lanraragi
docker rm lanraragi
docker run -e LRR_UID=0 -e LRR_GID=0 --name=lanraragi --restart=always -p 3001:3000 \
--mount type=bind,source=/mnt/docker/lanraragi/content,target=/home/koyomi/lanraragi/content \
--mount type=bind,source=/mnt/docker/lanraragi/database,target=/home/koyomi/lanraragi/database \
difegue/lanraragi
其中的端口号和路径依旧是依照自身实际更改。
补充说明
写了这么多,从部署到使用已经讲的比较清楚了,不过程序功能很多,难免有没有覆盖到的地方,诸多插件的配置方面不再一一赘述,大家对着汉化版或者浏览器翻译基本上都能看懂怎么用。
汉化版作者的视频介绍(以群晖为例)
汉化版作者在B站专门有一个视频介绍,可以作为本文的补充,同时用群晖不习惯敲命令的朋友们也可以参照视频部署
23 条评论
您好,请问在加入标签时出现Error while fetching tags :
Error: Connect timeout at /home/koyomi/lanraragi/script/../lib/LANraragi/Plugin/Metadata/EHentai.pm line 300.这个问题该怎么解决呢
你部署的机器能正常访问Ehentai吗?看起来像是网络问题。
你好,请问为什么我的登录插件是E-Hentai v.2.2 by Difegue版本,而你的是2.3版本?2.2版本没办法进入ex,因为没有igneous cookie项目可以填写.....请问我该怎么操作才能升级到2.3版本?
目前我的LANraragi是从docker页面下载,使用的0.8.7最新版本。
看到该留言后还请劳烦解答,最好邮箱回复,谢谢!
可能是作者最近没有更新docker镜像,所以docker镜像里自带的插件仍然是2.2版本,不过2.3版本的插件在github上[原仓库](https://github.com/Difegue/LANraragi/blob/dev/lib/LANraragi/Plugin/Login/EHentai.pm)处可以找到最新文件,把这个pm文件下载到本地,然后进入**设置(Settings)-插件设置(Plugin Configuration)**点击页面底部的**上传插件(Upload Plugin)**选择下载的插件上传即可。
噢噢,好的谢谢!另外请问这个该如何下载呢,我找了好久都没看到download标识(ó﹏ò。)
页面上代码框区域有个Raw按钮,右击它,然后点击“将连接另存为”就可以。
原来如此,感谢!
不用客气,能帮到忙就好
你好,2.3的插件已经装好,我也输入了自己的igneous cookie,但我不确定这种方法能否真的访问ex,因为有些文件刮削后显示“处理 ID df74f4f29dfc1b41d342f268a09b7b27debe0580 (No in-archive .ehviewer file found!)时发生插件错误”。请问有其他方法可以刮削ex的tag吗?
ID后面那串应该是指MD5,“No in-archive .ehviewer file found!”翻译过来是“没有找到存档的.ehviewer文件”,感觉就是这部分还是没连上ex服务器,不知道该怎么处理
这个提示是另一个插件Ehviewer提示的,和你配置的E-hentai没有什么关系,检测连没连上最简单的办法就是在元数据编辑页面手动输入一个ex的画廊地址,能获取成功就是连上了
“在元数据编辑页面手动输入一个ex的画廊地址”,是指“输入有效的 EH 库 URL 以将此 EH 库中的元数据复制到此 LANraragi 存档 :”或“E-H Gallery URL (Will attach tags matching this exact gallery to your archive) :”下面的那个栏目吗?该栏目就填写exhentai.org这个?
是的,就是这个位置,把“Import Tags from Plugin”选项选择成E-hentai,然后填写一个“https://exhentai.org/g/xxxxx/xxxxxx/”这种格式的画廊地址,然后点Go!按钮,看看能不能获取到正确tag(也就是没有错误提示,或者你干脆把旧的tag删掉,看看点击Go!后有没有获取到新的tag)
那这个是需要找到对应的原本子链接再复制粘贴进去吗?
对的,不过如果你文件名就是本子标题,程序会自动搜索标题对应的链接并获取相关tag,这种情况下就不用手动输入链接。我让你输入一个ex的链接,只是为了测试一下它能不能正常访问ex。测试能成功访问ex的话,以后文件名用标题,并且在插件设置里打开E-Hentai的自动运行(Run Automatically),就能达到上传后自动获取相关tag的效果(当然你也可以手动输入ex链接获取)。目前你如果只是想测试能否正常访问ex的话,随便挑一个ex画廊的链接就行,不一定非得跟你的本子文件对应,反正只是测试连通性。
请问nhentai那边如何在lanraragi中登录?我发现原来我之前在ex站下载的内容,ex站已经把它们删掉了,而nh站中仍然可以手动搜索到。我想调用nh的资源进行tag刮削
nhentai需要过CF的CND防御验证,我之前尝试配置过但没有成功,这一点暂时帮不到你,你可以试试chaika.moe插件,它里面也有一些被删除的漫画的数据,只不过很多只有原版漫画,得搜日文/罗马音转写标题才能搜到
请问chaika.moe这个插件该如何使用?我之前搜总是失败
跟Ehentai一样的,不输链接默认按标题搜索,输入链接从链接获取
好的谢谢,我一会儿回去试试,现在在地铁
新增了一段nhentai插件的配置教程,如果你还想钻研的话可以试一下
请问e-hentai的网址是什么呀
e-hentai.org