使用puppeteer爬取漫画
使用puppeteer爬取漫画
介绍
前几天看到龙珠超-次元乱战的漫画,感觉还不错,奈何一下子没有找到资源。
但是看到了在线版本的,这里就想到直接将资源下载下来看,那不是更方便吗😊。
正文
工具
本次使用的工具有
流程
这里简单讲一下具体的流程。
- 进入漫画的目录首页,获取漫画的章节数量及具体路由
- 循环进入相关章节的路由
- 获取当前章节的分页数量
- 下载指定章节中的漫画资源(也就是一张图片)
- 点击下一页进入当前章节的也一张图片
- 完成所有下载后,将图片合并为
pdf
优化
- 上面的文件下载难免会出现失败的情况,可以适当进行重试的设置
- 多次执行脚本不应该重复下载已下载的资源,可以在下载前对本地文件进行检索
具体实现
碰到的问题
npm i puppeteer 失败
下载puppeteer会自动下载chromium
浏览器,这个浏览器有100-200MB
,经常会出现失败的情况。
我们可以先执行export PUPPETEER_SKIP_DOWNLOAD='true'
来跳过下载。
接着在项目目录下面执行node node_modules/puppeteer/install.js
来下载。
Failed to launch the browser process!
(Chrome is downloaded but fails to launch on Node.js 14)[https://pptr.dev/troubleshooting#chrome-is-downloaded-but-fails-to-launch-on-nodejs-14]
结束
做个简单记录😊
本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!