记一次爬取图片的历程
目录
一、前言
彼岸桌面 是一个很好的收集壁纸的网站,壁纸高清,我很喜欢,并且还赞助了会员。这次的爬取对象就是它了。
这次的流程是先写爬虫脚本,然后放在VPS
上爬取地址,最后用COLAB
下载。
二、网站分析与确定爬取流程
-
分析网页网址
比如,我想爬取 风景 类的壁纸,先进入风景专区,然后点击一张图片的地址,发现此时的图片预览图是原图!!!那就可以确定爬取流程了。先以一张图为例。
1.1 找到图片分类网址
http://www.netbian.com/fengjing
1.2 找到图片介绍地址和真实地址
图片介绍地址:
http://www.netbian.com/desk/23006.htm
图片真实地址:
http://img.netbian.com/file/2020/1108/1da1eab002604a8adcc33d8103b5758d.jpg
-
确定爬取流程
2.1 风景分类界面获取介绍图片代号
2.2 图片介绍界面获取图片真实地址
三、写脚本
以下为获取风景下图片链接的bash
脚本,第一页的图片请单独处理。
|
|
注意
grep -a
可以查找二进制中的文字grep -m 1
只保留第一次匹配- 用
wget -qO-
而不用curl -s
的原因是之后的grep -m 1
查找到之后会堵塞通道造成错误
四、下载图片
因为完全下载所需的空间需要几G之上,我的VPS
不足以持,因此就用到了Google家的COLAB
注意
COLAB
中 !
开头表示运行SHELL
命令
|
|
五、成品及反思
-
此次抓取中,有几点需要注意,
- 下载网页源码之后可以找到文字,但用
grep
找不到,就是二进制文件的问题,加参数-a
即可。 grep
找到多个匹配,加参数-m
即可只保留第一个。curl
和grep
连用有时会导致通道堵塞,使用wget -qO-
全下载之后再grep
即可。COLAB
中使用shell命令极大的增加了能力,并且可以挂载谷歌网盘,极大得方便文件的传输。