实操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学习笔记_数据排序方法
May 22 Python
Python基于回溯法子集树模板解决0-1背包问题实例
Sep 02 Python
详解Python是如何实现issubclass的
Jul 24 Python
django 微信网页授权登陆的实现
Jul 30 Python
python字典的setdefault的巧妙用法
Aug 07 Python
python 类的继承 实例方法.静态方法.类方法的代码解析
Aug 23 Python
浅析Python语言自带的数据结构有哪些
Aug 27 Python
使用python去除图片白色像素的实例
Dec 12 Python
浅谈matplotlib.pyplot与axes的关系
Mar 06 Python
查看已安装tensorflow版本的方法示例
Apr 19 Python
pytorch下的unsqueeze和squeeze的用法说明
Feb 06 Python
使用pipenv管理python虚拟环境的全过程
Sep 25 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
回首过去10年中最搞笑的10部动漫,哪一部让你节操尽碎?
2020/03/03 日漫
PHP面向对象——访问修饰符介绍
2012/11/08 PHP
PHP使用PHPMailer发送邮件的简单使用方法
2013/11/12 PHP
PHP获得数组交集与差集的方法
2015/06/10 PHP
PHP封装的mysqli数据库操作类示例
2019/02/16 PHP
js闭包实例汇总
2014/11/09 Javascript
浅谈页面装载js及性能分析方法
2014/12/09 Javascript
javascript实现在网页任意处点左键弹出隐藏菜单的方法
2015/05/13 Javascript
举例讲解Node.js中的Writable对象
2015/07/29 Javascript
jquery实现手风琴效果
2015/11/20 Javascript
Javascript简写条件语句(推荐)
2016/06/12 Javascript
原生js实现放大镜
2017/02/20 Javascript
使用Math.max,Math.min获取数组中的最值实例
2017/04/25 Javascript
iview通过Dropdown(下拉菜单)实现的右键菜单
2018/10/26 Javascript
基于vue开发微信小程序mpvue-docs跳转页面功能
2019/04/10 Javascript
浅谈vuex中store的命名空间
2019/11/08 Javascript
Vue中点击active并第一个默认选中功能的实现
2020/02/24 Javascript
[07:03]显微镜下的DOTA2第九期——430圣堂刺客杀戮秀
2014/06/20 DOTA
[01:09:19]DOTA2-DPC中国联赛 正赛 VG vs Aster BO3 第二场 2月28日
2021/03/11 DOTA
详解Python3 中hasattr()、getattr()、setattr()、delattr()函数及示例代码数
2018/04/18 Python
python简单鼠标自动点击某区域的实例
2019/06/25 Python
Django使用中间件解决前后端同源策略问题
2019/09/02 Python
TensorFlow查看输入节点和输出节点名称方式
2020/01/04 Python
PyTorch中Tensor的数据统计示例
2020/02/17 Python
python+selenium 脚本实现每天自动登记的思路详解
2020/03/11 Python
python实现将列表中各个值快速赋值给多个变量
2020/04/02 Python
django和flask哪个值得研究学习
2020/07/31 Python
python利用opencv实现颜色检测
2021/02/23 Python
文史专业毕业生自荐信
2013/11/17 职场文书
英文导游欢迎词
2014/01/11 职场文书
高中毕业生登记表自我鉴定范文
2014/03/18 职场文书
合同意向书范本
2014/07/30 职场文书
学校总务处领导干部个人对照检查材料思想汇报
2014/10/06 职场文书
毕业论文指导老师意见
2015/06/04 职场文书
社交电商模式的兴起:这些新的商机千万别错过
2019/07/26 职场文书
零基础学java之方法的定义与调用详解
2022/04/10 Java/Android