40行代码+奇技淫巧搞定专属电脑壁纸库【附壁纸】

浏览: 1326

本文作者:数据取经团 - 施维

项目效果

image.png

项目背景

最近电脑壁纸存量捉急,老是几张图片看得有点厌烦,就想着能不能一次性下载多一些壁纸,用幻灯片放映方式天天换壁纸,天天好心情。于是乎找了一个免费图片网址PEXELS, 开始撸一波代码,写个小爬虫搞个壁纸库。本文主要会解释一下代码的实现和整个写代码的流程,可供爬虫初学者一起学习。如果想直接拿壁纸,可直接跳到文章最后。

项目流程

要写爬虫,首先我们打开网页,习惯性按一下f12,姿势就很帅。

2.1 翻页

要爬取图片网页,特别是这种瀑布流的网页,一个很重要的点就是怎么自动翻页,所以我直接从这一点入手。一般来说,翻页数据是动态加载,所以,你可以选择network部分,只查看XHR,一边把网页往下滑动看看它都动态加载了一些什么,结果如图:

image.png

可以看见,其实格式还是挺统一的嘛!随便点一个看看,会发现像这样的一个网址:

image.png

可以看到后面部分都是网页参数,而且是带有时间的参数,哎哟,这可怎么搞。秉着对于不知道的先瞎搞再说的原则,我直接把后面的参数去掉,得到这样的链接,翻页就是page往上加:

image.png

一回车,情景是这样的:

image.png

我一看就懵逼了,这原来是个js文件,看着好乱,怎么办!!等我定睛一看,里面好像有挺多像.jpeg和.png之类的链接地址,地址里面还有图片的id!!像这样:

image.png

美滋滋,这样一来,我们直接有了翻页技能和图片id,还愁图片没法下载?

2.2 图片自定义宽高下载

我先打开了js文件中的图片链接试了一下,发现确实是直接跳到一张图片,不过链接里面参数好多,懒得看了,我就直接先通过正常网页下载流程试了一次,注意保持打开f12:


image.png

可以看到,这个网站可以自定义下载图片的宽高,相当良心,根据我的电脑,我选择了1920*1080. 可以看到,在我点击download按钮的时候,f12网页检查器显示加载了好几个文件,注意这个时候要选择All视图选项。很容易看出,最后一个就是下载加载文件,直接点开看详情,可以看到注意一个网址:

image.png

直接复制到浏览器回车,就可以直接下载图片了,美滋滋。

代码与下载

有了上面的步骤,我们很容易就能知道代码应该怎么写,无非就是构造网址、访问网址、信息提取、再构造网址...

因为公众号文章大多是手机阅读,不方便显示代码,所以具体代码和壁纸都放在github上,可以在上面浏览和下载代码,代码有注释,也可获取100张壁纸下载百度云链接。【获取代码及壁纸,只需关注本公众号并回复“壁纸爬虫”】

文中如有错误和叙述不妥之处,望指正。


推荐 0
本文由 数据取经团 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册