【彼岸之笙】用Python爬取5000张手机高清壁纸大图

编程开发   © 文章版权由 admin 解释,禁止匿名转载

#楼主# 2021-7-29

数据源分析
爬取目标

图片首页地址为:https://www.3gbizhi.com/sjbz/index_1.html,该网站壁纸质量不错,清晰度也非常好,重点是对爬虫也非常友善,试了几次,爬取速度都可以,因此大家应该把该网站用于学习目的。

使用的 Python 模块

本次使用 requests,re,threading。

threading 模块将在本案例中,进行分页多线程抓取。

列表页分析

分析列表的时候发现,该网站可以直接通过,修改列表页图片地址获取高清地址,有这样的技巧存在,就能大幅度减少爬虫代码编写量,具体如下。

通过浏览器检查图片标签,获得如下图所示图片地址,即 https://pic.3gbizhi.com/2020/1214/20201214112632727.jpg.476.780.jpg

在浏览器中打开该地址,得到一张图片预览地址,去除 .476.780 相关内容,直接获取到大图地址,即 https://pic.3gbizhi.com/2020/1214/20201214112632727.jpg

既然可以通过列表页直接获取大图地址,那针对该网站的爬取,直接通过列表页即可实现。下面就可以针对分析进行需求的整理工作。

整理需求如下
爬取目标网站列表页;
分析图片大图链接;
请求图片,保存图片。
编码时间
在上文针对列表页面进行了数据上的分析,接下来就可以对其进行代码编写了。

此时获取到的就是图片的真实地址,调用 save_image 函数,对远程图片进行存储。其中 title 为图片存储地址。

最后使用多线程进行爬取,开启 5 个线程,当所有线程结束运行时,停止整体代码。

运行我们的爬虫程序,会看到图片批量的存储到了本地。

抓取结果展示时间
抓取到非常多优质的手机壁纸,换到手机不能用,都用不完了。

完整代码下载地址:

本帖含有隐藏内容,请您 回复 后查看


代码编写过程中,顺手爬取了一堆图片,可以提前预览一波,看看图,在决定是否运行这段代码。
3k张壁纸:
本帖含有隐藏内容,请您 回复 后查看
密码:1188

板凳
梦缘 2021-7-29
一楼[玫瑰]
地板
PearNo 2021-7-29
可以把帖子发到吾爱去[滑稽]
我吾爱没号[滑稽]
你是二楼[滑稽]
6楼
PearNo 2021-7-29
好吧[滑稽]
7楼
到此一游 2021-7-29
正好想学学多线程,楼主很棒哦
8楼
大龙虾 2021-7-29
你确定多搞几次,网站不会死?[滑稽][滑稽]
总共也就几千张图,爬下来后我用zip正常压缩后才1.45G[滑稽]
给个凯币吧[滑稽][大拇指]

评论

登录后才可发表内容
  • 主题

    23

  • 帖子

    327

  • 关注者

    0

Copyright © 2019 凯特网.   Powered by HYBBS 2.3.4  

Runtime:0.0822s Mem:2139Kb