实操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开发WebService系列教程之REST,web.py,eurasia,Django
Jun 30 Python
详解Python函数作用域的LEGB顺序
May 14 Python
Python注释详解
Jun 01 Python
Django 前后台的数据传递的方法
Aug 08 Python
利用Python进行数据可视化常见的9种方法!超实用!
Jul 11 Python
pycharm远程linux开发和调试代码的方法
Jul 17 Python
10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)
Oct 11 Python
在Mac上删除自己安装的Python方法
Oct 29 Python
利用python如何在前程无忧高效投递简历
May 07 Python
Python接口测试结果集实现封装比较
May 01 Python
keras 权重保存和权重载入方式
May 21 Python
Python实现图片指定位置加图片水印(附Pyinstaller打包exe)
Mar 04 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获取MAC地址的函数代码
2011/09/11 PHP
PHP无限分类(树形类)
2013/09/28 PHP
CI框架中libraries,helpers,hooks文件夹详细说明
2014/06/10 PHP
php获取访问者浏览页面的浏览器类型
2017/01/23 PHP
PHP jQuery+Ajax结合写批量删除功能
2017/05/19 PHP
php中输出json对象的值(实现方法)
2018/03/07 PHP
Javascript 作用域使用说明
2009/08/13 Javascript
javascript循环变量注册dom事件 之强大的闭包
2010/09/08 Javascript
JavaScript中双叹号(!!)作用示例介绍
2014/04/10 Javascript
Javascript基础知识(一)核心基础语法与事件模型
2014/09/29 Javascript
Angular ui.bootstrap.pagination分页
2017/01/20 Javascript
Vue常用指令详解分析
2018/08/19 Javascript
详解Node.js读写中文内容文件操作
2018/10/10 Javascript
vue使用axios上传文件(FormData)的方法
2019/04/14 Javascript
ionic+html5+API实现双击返回键退出应用
2019/09/17 Javascript
[02:51]DOTA2英雄基础教程 风暴之灵
2013/12/23 DOTA
python 动态获取当前运行的类名和函数名的方法
2014/04/15 Python
Python利用前序和中序遍历结果重建二叉树的方法
2016/04/27 Python
Python实现包含min函数的栈
2016/04/29 Python
深入理解 Python 中的多线程 新手必看
2016/11/20 Python
python中协程实现TCP连接的实例分析
2018/10/14 Python
对Python之gzip文件读写的方法详解
2019/02/08 Python
python函数修饰符@的使用方法解析
2019/09/02 Python
flask的orm框架SQLAlchemy查询实现解析
2019/12/12 Python
聊聊python在linux下与windows下导入模块的区别说明
2021/03/03 Python
英国建筑用品在线:Building Supplies Online(BSO)
2018/04/30 全球购物
海量信息软件测试笔试题
2015/08/08 面试题
五一劳动节活动记录
2014/03/23 职场文书
商务英语专业毕业生求职信
2014/07/06 职场文书
县政府办公室领导班子个人对照检查材料
2014/09/16 职场文书
新党章的学习心得体会
2014/11/07 职场文书
公司会议开幕词
2015/01/29 职场文书
2015年大学生工作总结
2015/04/21 职场文书
pytorch 带batch的tensor类型图像显示操作
2021/05/20 Python
使用 Apache Dubbo 实现远程通信(微服务架构)
2022/02/12 Servers
微前端qiankun改造日渐庞大的项目教程
2022/06/21 Javascript