详解Python静态网页爬取获取高清壁纸


Posted in Python onApril 23, 2019

前言

在设计爬虫项目的时候,首先要在脑内明确人工浏览页面获得图片时的步骤

一般地,我们去网上批量打开壁纸的时候一般操作如下:

1、打开壁纸网页

2、单击壁纸图(打开指定壁纸的页面)

3、选择分辨率(我们要下载高清的图)

4、保存图片

实际操作时,我们实现了如下几步网页地址的访问:打开了壁纸的网页→单击壁纸图打开指定页面→选择分辨率,点击后打开最终保存目标图片网页→保存图片

在爬虫的过程中我们就尝试通过模拟浏览器打开网页的操作,一步步获得、访问网页、最后获得目标图片的下载地址,对图片进行下载保存到指定路径中

*这些中间过程中网页的一些具体筛选条件的构造,需要打开指定页面的源代码去观察和寻找包含有目的链接的标签

具体实现项目与注释

这里我只想获得一些指定的图片,所以我先在网页上搜索“长门有希”,打开了一个搜索结果页面,发现在这个页面上就已经包含了同类型的其他壁纸链接,于是我一开始就把最初访问的目的地址设置为这个搜索结果页面

目标结果页面截图:

详解Python静态网页爬取获取高清壁纸

图中下标为"1/29"."2/29"为其他同类型目标壁纸,通过点击这些图片我们可以打开新的目标下载图片页面

这里我们查看一下网页源代码

详解Python静态网页爬取获取高清壁纸

图中黄色底的地方就是打开这些同类壁纸的目的地址(访问的时候需要加上前缀"http://desk.zol.com.cn")

现在我们可以尝试实现构建爬虫:

打开指定页面→筛选获得所有长门有希壁纸的目标下载页面链接

代码如下:

详解Python静态网页爬取获取高清壁纸

获得地址以后我们可以通过获取地址→打开指定页面→选择分辨率→获得目的下载地址→保存到本地指定路径中

在测试的时候我输出了一下上一步truelist中保存的内容

 详解Python静态网页爬取获取高清壁纸

可以看到保存的只是一个后缀,在访问的时候我们需要加上一个指定的前缀

实现代码如下(注释见代码):

详解Python静态网页爬取获取高清壁纸

 最后可以在自己的目标文件夹中看到爬下来的图片集~

详解Python静态网页爬取获取高清壁纸

以上所述是小编给大家介绍的Python爬取高清壁纸详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
深入解析Python中的变量和赋值运算符
Oct 12 Python
Linux下通过python访问MySQL、Oracle、SQL Server数据库的方法
Apr 23 Python
使用pycharm生成代码模板的实例
May 23 Python
python leetcode 字符串相乘实例详解
Sep 03 Python
Python给定一个句子倒序输出单词以及字母的方法
Dec 20 Python
Python对象与引用的介绍
Jan 24 Python
如何通过50行Python代码获取公众号全部文章
Jul 12 Python
django基础学习之send_mail功能
Aug 07 Python
基于Pycharm加载多个项目过程图解
Jan 19 Python
如何提高python 中for循环的效率
Apr 15 Python
django model 条件过滤 queryset.filter(**condtions)用法详解
May 20 Python
Python3.7安装pyaudio教程解析
Jul 24 Python
Python matplotlib画图与中文设置操作实例分析
Apr 23 #Python
Python实现的删除重复文件或图片功能示例【去重】
Apr 23 #Python
详解Python 函数如何重载?
Apr 23 #Python
解决Django生产环境无法加载静态文件问题的解决
Apr 23 #Python
Python 存储字符串时节省空间的方法
Apr 23 #Python
Django页面数据的缓存与使用的具体方法
Apr 23 #Python
Python切片操作去除字符串首尾的空格
Apr 22 #Python
You might like
做一个有下拉功能的留言版
2006/10/09 PHP
一个高ai的分页函数和一个url函数
2006/10/09 PHP
php实现网页上一页下一页翻页过程详解
2019/06/28 PHP
Thinkphp5框架中引入Markdown编辑器操作示例
2020/06/03 PHP
JS是否可以跨文件同时控制多个iframe页面的应用技巧
2007/12/16 Javascript
jQuery get和post 方法传值注意事项
2009/11/03 Javascript
js 全兼容可高亮二级缓冲折叠菜单
2010/06/04 Javascript
dojo随手记 gird组件引用
2011/02/24 Javascript
深入理解JavaScript系列(3) 全面解析Module模式
2012/01/15 Javascript
12种不宜使用的Javascript语法整理
2013/11/04 Javascript
Javascript封装DOMContentLoaded事件实例
2014/06/12 Javascript
JS中实现简单Formatter函数示例代码
2014/08/19 Javascript
JavaScript设计模式之策略模式实例
2014/10/10 Javascript
js解决select下拉选不中问题
2014/10/14 Javascript
node.js中的fs.writeFile方法使用说明
2014/12/14 Javascript
javascript字符串循环匹配实例分析
2015/07/17 Javascript
js实现固定显示区域内自动缩放图片的方法
2015/07/18 Javascript
详解使用webpack打包编写一个vue-toast插件
2017/11/08 Javascript
angularjs 获取默认选中的单选按钮的value方法
2018/02/28 Javascript
代码分析vue中如何配置less
2018/09/28 Javascript
javascript跳转与返回和刷新页面的实例代码
2019/11/20 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
Python循环语句之break与continue的用法
2015/10/14 Python
Python+tkinter使用80行代码实现一个计算器实例
2018/01/16 Python
浅谈Python对内存的使用(深浅拷贝)
2018/01/17 Python
Python 实现选择排序的算法步骤
2018/04/22 Python
浅谈python的dataframe与series的创建方法
2018/11/12 Python
python实现石头剪刀布小游戏
2021/01/20 Python
python3.6 如何将list存入txt后再读出list的方法
2019/07/02 Python
浅谈Keras中shuffle和validation_split的顺序
2020/06/19 Python
Python中的特殊方法以及应用详解
2020/09/20 Python
UGG英国官方网站:UGG UK
2018/02/08 全球购物
农村党支部先进事迹
2014/01/14 职场文书
任命通知范文
2015/04/21 职场文书
行政复议决定书
2015/06/24 职场文书
python中print格式化输出的问题
2021/04/16 Python