实操Python爬取觅知网素材图片示例


Posted in Python onNovember 27, 2021

【一、项目背景】

   在素材网想找到合适图片需要一页一页往下翻,现在学会python就可以用程序把所有图片保存下来,慢慢挑选合适的图片。

【二、项目目标】

1、根据给定的网址获取网页源代码。

2、利用正则表达式把源代码中的图片地址过滤出来。

3、过滤出来的图片地址下载素材图片。

【三、涉及的库和网站】

1、网址如下:

https://www.51miz.com/

2、涉及的库:requests、lxml

【四、项目分析】

   首先需要解决如何对下一页的网址进行请求的问题。可以点击下一页的按钮,观察到网站的变化分别如下所示:

https://www.51miz.com/so-sucai/1789243.html
https://www.51miz.com/so-sucai/1789243/p_2/
https://www.51miz.com/so-sucai/1789243/p_3/

   我们可以发现图片页数是1789243/p{},p{}花括号数字表示图片哪一页。

【五、项目实施】

1、打开觅知网,在搜索中输入你想要的图片素材(以鼠年素材图片为例)。

实操Python爬取觅知网素材图片示例 

2、根据上一步对网址的分析,首先我们定义一个类叫做ImageSpider,类里面定义初始化函数、发送请求获取响应数据函数、解析函数、主函数。首先初始化函数,准备url地址和headers,代码如下图所示。

实操Python爬取觅知网素材图片示例

3、发送请求获取响应数据函数。

实操Python爬取觅知网素材图片示例

4、解析数据,使用xpath获取二级页面链接,最后把图片存储在文件夹中。使用谷歌浏览器选择开发者工具或直接按F12,发现我们需要的图片src是在img标签下的,于是用Python的requests提取该组件。

实操Python爬取觅知网素材图片示例

实操Python爬取觅知网素材图片示例

5、主函数,代码如下图所示。

实操Python爬取觅知网素材图片示例

【六、效果展示】

1、运行程序,在控制台输入你要爬取的页数,如下图所示。

实操Python爬取觅知网素材图片示例

2、在本地可以看到效果图,如下图所示。

实操Python爬取觅知网素材图片示例

【七、总结】

   1、不建议抓取太多数据,容易对服务器造成负载,浅尝辄止即可。

   2、希望通过这个项目,能够帮助大家下载到素材图片。

   3、本文基于Python网络爬虫,利用爬虫库,实现素材图片的获取。实现的时候,总会有各种各样的问题,切勿眼高手低,勤动手,才可以理解的更加深刻。

到此这篇关于实操Python爬取觅知网素材图片示例的文章就介绍到这了,更多相关Python爬取觅知网素材图片内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python列表计数及插入实例
Dec 17 Python
Python制作爬虫采集小说
Oct 25 Python
mac系统安装Python3初体验
Jan 02 Python
Python tkinter事件高级用法实例
Jan 31 Python
利用Python如何将数据写到CSV文件中
Jun 05 Python
3分钟学会一个Python小技巧
Nov 23 Python
python用match()函数爬数据方法详解
Jul 23 Python
Python + Requests + Unittest接口自动化测试实例分析
Dec 12 Python
使用python实现微信小程序自动签到功能
Apr 27 Python
使用matlab 判断两个矩阵是否相等的实例
May 11 Python
Python爬虫实战案例之爬取喜马拉雅音频数据详解
Dec 07 Python
使用python向MongoDB插入时间字段的操作
May 18 Python
Python函数中apply、map、applymap的区别
Nov 27 #Python
python字符串拼接.join()和拆分.split()详解
Nov 23 #Python
Python装饰器的练习题
Nov 23 #Python
python人工智能human learn绘图可创建机器学习模型
利用Python实现Picgo图床工具
Nov 23 #Python
python turtle绘图命令及案例
python机器学习Github已达8.9Kstars模型解释器LIME
You might like
两种php调用Java对象的方法
2006/10/09 PHP
destoon官方标签大全
2014/06/20 PHP
写一段简单的PHP建立文件夹代码
2015/01/06 PHP
php 数据结构之链表队列
2017/10/17 PHP
PHP上传文件及图片到七牛的方法
2018/07/25 PHP
JS 建立对象的方法
2007/04/21 Javascript
关于JS管理作用域的问题
2013/04/10 Javascript
AngularJS中的模块详解
2015/01/29 Javascript
浅析JavaScript回调函数应用
2016/05/22 Javascript
JavaScript遍历求解数独问题的主要思路小结
2016/06/12 Javascript
微信小程序动画组件使用解析,类似vue,且更强大
2019/08/01 Javascript
layui实现二维码弹窗、并下载到本地的方法
2019/09/25 Javascript
关于vue路由缓存清除在main.js中的设置
2019/11/06 Javascript
24个ES6方法解决JS实际开发问题(小结)
2020/05/31 Javascript
微信小程序获取当前时间及星期几的实例代码
2020/09/20 Javascript
[11:01]2014DOTA2西雅图邀请赛 冷冷带你探秘威斯汀
2014/07/08 DOTA
python 切片和range()用法说明
2013/03/24 Python
Python中用pycurl监控http响应时间脚本分享
2015/02/02 Python
Python collections模块使用方法详解
2019/08/28 Python
python用WxPython库实现无边框窗体和透明窗体实现方法详解
2020/02/21 Python
Python pymysql模块安装并操作过程解析
2020/10/13 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
html5 worker 实例(二) 图片变换效果
2013/06/24 HTML / CSS
ET Mall东森购物网:东森严选
2017/03/06 全球购物
欧洲、亚洲、非洲和拉丁美洲的度假套餐:Great Value Vacations
2019/03/30 全球购物
亚马逊意大利站点:Amazon.it
2020/12/31 全球购物
what is the difference between ext2 and ext3
2015/08/25 面试题
环境工程专业个人求职信
2013/12/05 职场文书
关于人生的感言
2014/01/17 职场文书
客运企业隐患排查工作方案
2014/06/06 职场文书
公务员中国梦演讲稿
2014/08/19 职场文书
弘扬焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
银行职员工作失误检讨书
2014/10/14 职场文书
学雷锋团日活动总结
2015/05/06 职场文书
电子表的操作介绍说明书
2019/10/28 职场文书
MySQL 四种连接和多表查询详解
2021/07/16 MySQL