添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

(由于简书无法将代码以文本形式较好地呈现,故本文代码部分将以图片形式呈现,若有文本代码的需要,请移步至 淀粉月刊官网原文

大妈之家最近又在自审了,虽然社区版客户端还能用,网页端也能用,但是为了防止下一次自审,以及以后的作品被ban,总要找个后备方案。 (UWP客户端,确信) python脚本爬取图片,便是其中一种。

0. 环境

本文默认读者已经安装和正确配置如下环境

python3(愤鸟的版本为3.8.2),需安装requests、lxml、urllib、selenium

FireFox及其对应selenium WebDriver(Chrom(ium)、Edge(两个版本)、Internet Explorer、Opera 和 Safari也可以,其他浏览器不保证能用)

selenium的安装可参考 这篇文章 ,但愤鸟建议安装好WebDriver以后,将WebDriver所在路径添加至系统环境变量里。

1. 思路

要实现爬取、下载大妈之家的漫画图片,我们需要 解析、获取图片链接 ;为了方便查看,需要 将每话的图片单独放到一个文件夹内 ,最好可以将 每个作品使用一个文件夹存放 ;有余力的话,可以做出简单的 防止重复下载 功能。

为了实现 解析、获取图片链接 ,我们需要分析观看漫画页面的源代码。经过实践得知,大妈之家的观看漫画页的图片为 通过js动态加载 ,那么我们需要从以下两个方案中选择一种:用python 运行js脚本 从而获取图片链接;用selenium 操作浏览器,使页面加载完成 后取得图片链接。愤鸟选择了后一种方案,该方案的优势是:代码好写,易读;劣势是:由于要等待浏览器,因此效率较低,而且会吃内存。

为了实现 将每话的图片单独放到一个文件夹内 每个作品使用一个文件夹存放 ,我们需要在漫画详情页获取各话链接。同时还要检测文件夹是否存在,并适时创建文件夹。

为了实现 防止重复下载 ,我们需要 设置一个标记 ,证明我们下载过这一话。愤鸟选择的方案是在下载完成后 放置一个空白文件作为标记

整个程序的流程为: