From f5ebbca26ced0e0f153a0253838aa4cc02bb08d2 Mon Sep 17 00:00:00 2001 From: jiayao Date: Thu, 25 Feb 2021 16:31:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E8=AF=B4=E6=98=8E=E6=96=87?= =?UTF-8?q?=E6=A1=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 98 ++++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 86 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 1c2a3cdca..2ff6e8146 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # 禁漫天堂下载器 -使用java的禁漫天堂爬虫🤡 +使用Github Actions的禁漫天堂爬虫🤡 java这门语言能让小项目变成中项目, 中项目变成大项目 🤡 @@ -8,24 +8,69 @@ java这门语言能让小项目变成中项目, 中项目变成大项目 🤡 ## 更新记录 +- **2021/2/25 15:16 v2.0.0重大更新, 支持直接使用Github Action自动爬取漫画, 不需要本地部署, 直接输入漫画url然后等待Github Action爬取完成然后下载压缩包即可.** - 2021/2/18 22:15 v1.2.0支持下载整本只有一章的无章节漫画 - - 2021/2/18 16:35 添加下载单独某个章节的功能. - - 2021/2/18 14:27 修复保存失败时引发的程序停止运行. - - 2021/2/18 15:38 确保配置文件中配置为空时程序能够正常识别. - - 2021/2/17 20:51 修复由于章节列表格式不规范导致的获取章节名称失败. +## Github Action使用方法 + +v2.0.0之后现在支持直接使用Github Action进行下载, 不需要手动部署了. + +Github Action是微软收购github之后推出的CI/CD工具, 你可以理解为这是一台微软免费给你白嫖的2核7G内存的服务器, 每次提交代码都可以触发运行一次服务器. + +现在程序支持提交代码之后直接通过这个服务器帮你下载完成漫画, 然后打成一个压缩包, 提供给你下载. + +**感谢微软, 微软大法好🙌** + +通过以下步骤即可在GitHub Action上运行程序 + +1. 点击图中fork按钮, fork一份我的项目给你自己.![image.png](https://i.loli.net/2021/02/25/r1EzkUtY4agP3sA.png) + +2. 进入`/src/main/resources/downloadPath.json`目录, 点击箭头所指的编辑按钮, 对该文件进行编辑.![image.png](https://i.loli.net/2021/02/25/gxre6j2PVYnl53d.png) + +3. 按照json格式填入漫画链接, 如果要下载一本, 那格式为 : + ```json + [ + "https://18comic.vip/album/180459/" + ] + ``` + 如果要下载两本或者多本, 格式为(注意逗号) : + ```json + [ + "https://18comic.vip/album/180459/", + "https://18comic.vip/album/182168" + ] + ``` + + 注意尽量不要添加太多漫画, 否则下载起来时间要很久, 压缩包也会很大. + + 添加完成之后, 点击下方提交按钮 : + + ![image.png](https://i.loli.net/2021/02/25/O745iyUbfZvBDSN.png) + +4. 提交完成之后进入Actions页面查看程序运行状况 :![image-20210225153743083](C:\Users\jiayao\AppData\Roaming\Typora\typora-user-images\image-20210225153743083.png) -## 打包程序 + ![image-20210225153846062](C:\Users\jiayao\AppData\Roaming\Typora\typora-user-images\image-20210225153846062.png) + + 绿色说明运行成功, 黄色说明正在运行, 红色说明运行失败. 运行成功之后, 点击对应的任务 :![image-20210225154035063](C:\Users\jiayao\AppData\Roaming\Typora\typora-user-images\image-20210225154035063.png) + + 点击箭头所指的**finder-result**文件, 即可下载已经打包好的爬虫图片, 注意这里下载github文件取决于你访问github的速度, 如果没有科学上网可能需要下载很久. + +## 本地打包 1. 安装jdk15. 2. 安装maven. -3. 下载源代码并且修改application.properties文件中的以下4个配置, 第一个是爬虫存放图片的路径, 第二第三个是科学上网的ip和端口, 因为禁漫天堂是被墙的不设置代理应该下载不下来, 第四个是访问禁漫天堂时候浏览器的cookie +3. 下载源代码并且修改**application.properties**文件中的以下4个配置 : + + - comic.download.path : 下载到本地的目录 + - comic.proxy.host : 科学上网的ip + - comic.proxy.port : 科学上网的端口 + - comic.download.cookie : 浏览器访问禁漫天堂时的cookie, 可为空 ```properties comic.download.path=C:\\Users\\jiayao\\Pictures @@ -33,15 +78,44 @@ java这门语言能让小项目变成中项目, 中项目变成大项目 🤡 comic.proxy.port=10808 comic.download.cookie=__cfduid=d143120c4820765e39f93c708adb046db1613394311; AVS=lst54bj7248ch7r16rp8fo7800; shunt=1; _gid=GA1.2.1192332230.1613394323; cover=1; ipcountry=HK; ipm5=c759e3424d3ed099c2a82ef7f5222a99; _ga_YYJWNTTJEN=GS1.1.1613463242.7.1.1613464015.58; _ga=GA1.2.1275815841.1613394321; _gali=wrapper ``` -4.执行`mvn clean install` 得到最后的jar包 + 4.执行`mvn clean install` 得到最后的jar包 如果直接下载我提供的jar包, 解压后修改上面四个配置再压缩成jar包 ## 运行程序 -在确保已经有java运行环境之后, 命令行中进入jar包所在的目录, 执行`java -jar ./*.jar`即可运行程序 +程序现在支持两种运行模式, 作为单次运行的前台模式, 和作为持续运行服务的后台模式 + +### 前台模式 + +前台模式是指程序完成下载任务之后会自动关闭, 通过读取downloadPath.json文件内的链接来进行下载, 每一次下载都要运行一次程序. + +进入`/src/main/resources/downloadPath.json`目录, 按照json格式填入漫画链接, 如果要下载一本, 那格式为 : + +```json +[ + "https://18comic.vip/album/180459/" +] +``` + +如果要下载两本或者多本, 格式为(注意逗号) : + + ```json + [ + "https://18comic.vip/album/180459/", + "https://18comic.vip/album/182168" + ] + ``` + +前台模式与后台模式都支持下载整本漫画或者单独某个章节. + +添加数据之后, 打包, 然后在确保已经有jdk 15之后, 命令行中进入jar包所在的目录, 执行`java -jar ./*.jar`即可按照前台模式运行程序 , 当下载完成之后, 程序会自动退出. + +### 后台模式 + +后台模式是指程序将会作为一个服务持续运行, 通过等待接口请求来下载漫画, 每一次请求接口就会进行一次下载, 程序完成下载后不会自动关闭. -## 下载漫画 +程序打包, 然后在确保已经有jdk 15之后, 命令行中进入jar包所在的目录, 执行`java -jar ./*.jar -s`(注意-s参数)即可按照后台模式运行程序 , 当下载完成之后, 程序会继续等待服务. 运行程序之后打开浏览器, 在地址栏输入 : @@ -63,14 +137,14 @@ http://localhost:7788/finder/download?homePage=https://18comic.vip/photo/211115 ## 项目特点 +- 支持github actions - 没有用到爬虫库, 纯用hutool对html页面进行切分. - 多线程异步爬虫. - 对2020-10-27之后的反爬虫图片进行了反反爬虫处理. ## TODO +- [x] 支持github action - [x] 支持单独下载某个章节而不是每一次都下载完整的一本漫画. - [x] 支持下载整本只有一章的无章节漫画. -- [ ] 直接生成exe文件不需要依赖jdk环境. -- [ ] 通过集成邮件服务, 每一章都发一封邮件? 邮件里面是这这一章的全部图片. - [ ] 通过指定外部配置文件来覆盖内部配置文件, 对于直接下载jar包的用户不需要先解压修改配置文件后再压缩回去. \ No newline at end of file