实操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之画圈还不简单吗?
Sep 20 Python
Python对文件和目录进行操作的方法(file对象/os/os.path/shutil 模块)
May 08 Python
python 实现判断ip连通性的方法总结
Apr 22 Python
Python 中导入csv数据的三种方法
Nov 01 Python
python对文件目录的操作方法实例总结
Jun 24 Python
Python中模块(Module)和包(Package)的区别详解
Aug 07 Python
Python学习笔记之Break和Continue用法分析
Aug 14 Python
基于python实现地址和经纬度转换
May 19 Python
.img/.hdr格式转.nii格式的操作
Jul 01 Python
Python优秀开源项目Rich源码解析的流程分析
Jul 06 Python
Python切片列表字符串如何实现切换
Aug 06 Python
Django项目配置Memcached和Redis, 缓存选择哪个更有优势
Apr 06 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数组中删除元素的实现代码
2012/06/22 PHP
PHP屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
2013/03/06 PHP
浅析php中jsonp的跨域实例
2013/06/21 PHP
总结PHP如何获取当前主机、域名、网址、路径、端口和参数等
2016/09/09 PHP
Thinkphp通过一个入口文件如何区分移动端和PC端
2017/04/18 PHP
PHP 进度条函数的简单实例
2017/09/19 PHP
javascript的回调函数应用示例
2014/02/20 Javascript
JQuery拖动表头边框线调整表格列宽效果代码
2014/09/10 Javascript
JS常见问题之为什么点击弹出的i总是最后一个
2016/01/05 Javascript
jQuery设计思想
2017/03/07 Javascript
nodejs实现OAuth2.0授权服务认证
2017/12/27 NodeJs
vue中使用cropperjs的方法
2018/03/01 Javascript
微信小程序实现人脸识别
2018/05/25 Javascript
详解关于Angular4 ng-zorro使用过程中遇到的问题
2018/12/05 Javascript
深入理解vue中的slot与slot-scope
2019/04/22 Javascript
微信小程序实现同一页面取值的方法分析
2019/04/30 Javascript
Vue this.$router.push(参数)实现页面跳转操作
2020/09/09 Javascript
[14:25]教你分分钟做大人:主宰(HEROS)
2014/12/08 DOTA
Python列表list内建函数用法实例分析【insert、remove、index、pop等】
2017/07/24 Python
Python RabbitMQ消息队列实现rpc
2018/05/30 Python
Python利用ORM控制MongoDB(MongoEngine)的步骤全纪录
2018/09/13 Python
在Mac上删除自己安装的Python方法
2018/10/29 Python
django中SMTP发送邮件配置详解
2019/07/19 Python
详解pandas中MultiIndex和对象实际索引不一致问题
2019/07/23 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
使用Dajngo 通过代码添加xadmin用户和权限(组)
2020/07/03 Python
python输出结果刷新及进度条的实现操作
2020/07/13 Python
Python 如何在字符串中插入变量
2020/08/01 Python
css 省略号 css3让多余的字符串消失并附加省略号的实现代码
2013/02/07 HTML / CSS
英国Amara家居法国网站:家居装饰,现代装饰和豪华礼品
2016/12/15 全球购物
美国女性运动零售品牌:Lady Foot Locker
2017/05/12 全球购物
回门宴新郎答谢词
2014/01/12 职场文书
2014年国庆节广播稿
2014/09/19 职场文书
小学生2014国庆节演讲稿:祖国在我心中
2014/09/21 职场文书
说谎欺骗人检讨书300字
2014/11/18 职场文书
2016年校园植树节广播稿
2015/12/17 职场文书