python爬虫多线程实战:爬取美桌1080p壁纸图片

2023-11-09 02:40

本文主要是介绍python爬虫多线程实战:爬取美桌1080p壁纸图片,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Python,可以帮忙抢票,可以爬虫东西,关于Python爬虫怎么做?今天教大家一个案例,python爬虫多线程实战:爬取美桌1080p壁纸图片

1 技术点分析

  • 爬虫requests
  • 多线程threading
  • 文件io读写操作
  • xpath 提取ur
  • 正则

2 实战

2.1 分析url

搞清楚各个url 的关联
win4000.com/wallpaper_205_0_10_1.html

URL中与分类的关系:

wallpaper : 桌面壁纸

205 :壁纸分类对应大陆明星

10 :图片尺寸对应1920*1080

分析到这一部,我们知道 ,如果要需要其他类型的壁纸,只需要更改网站分类代码就可以了。
在这里插入图片描述

2.2 谷歌 charme ,通过右键检查

在这里插入图片描述
chrame 浏览器右键提示
在这里插入图片描述
按图顺序,依次找到对应的html标签。

通过查看,我们发现 中间展示 的图片是由一个ul 标签包裹的 多个Li

我们所要跳转的链接 就在 Li 标签中, 这时就需要使用xpath进行数据的提取。

到此,我们第一层url 的分析就完成了。可以写出以下代码段。
在这里插入图片描述
在这里插入图片描述
此时通过xpath 获到当前页面中的 ul 中所有li 标签了。

那单个明星的跳转链接只需要再次xpath 进行提取就Ok了。
在这里插入图片描述
完成到这里你的代码运行结果应该如下:是两个列表list。
在这里插入图片描述

2.3 准备下载图片

到这,完成第一步,你已经成功获到 每个明星的跳转链接 :

url: win4000.com/wallpaper_detail_153895.html

再次进行url 的分析:
在这里插入图片描述
初步分析

通过上图的分析,可以找到这张图,是我们要 1080规格的。但很可惜,一共9张,现在只能找到一张图片的url。

选其中两张图片地址对比:

pic1.win4000.com/wallpaper/2018-12-26/5c22eb195abe8.jpg

pic1.win4000.com/wallpaper/2018-12-26/5c22eb1c722dc.jpg

好像就是后面文件名不同。如果一张张取是不是很麻烦?

不信你自己去试一下。点再分析一下页面,有个 【查看原图】 选项,点一下试试呢?
在这里插入图片描述
点击上图出,点完发现了url的变化。
在这里插入图片描述
再看看有没有惊喜的地方 :
在这里插入图片描述
上图为url分析。

通过上图的分析 ,我们发现原来这个big页面有我们想要的所有 1080P的图片,而且,全是用ul 包裹,放到单个Li 标签中 。那简单了,用之前的办法 再提取一次,就出来了。代码如下:
在这里插入图片描述
在这里插入图片描述
到这里,我们第一步就完成了一页24个明星图片的地址url的爬取。第二步,完成了单个明星的1080图片地址url的爬取。下一步,我们把图片保存到本地就顺利结束。

2.4 图片保存

按需求,要单独到一个文件夹内。那我们就需要在本地路径内 创建对应的文件夹。此处使用 star_img_name 列表中的值。需要使用到i/o读写操作。

在这里插入图片描述
在这里插入图片描述
顺利完成
在这里插入图片描述

最后

如果有想学习爬虫的小伙伴,这里给大家分享一份Python爬虫学习资料和公开课,里面的内容都是适合零基础小白的笔记和资料,超多实战案例,不懂编程也能听懂、看懂。需要的话扫描下方二维码免费获得,让我们一起学习!

微信扫描下方CSDN官方认证二维码即可领取

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python学习软件

工欲善其事,必先利其器。学习Python常用的开发软件都在这里了!
在这里插入图片描述

三、Python入门学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~在这里插入图片描述

四、Python练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述

五、Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。这份资料也包含在内的哈~在这里插入图片描述

六、Python面试资料

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述
需要的小伙伴可自行微信扫描下方CSDN官方认证二维码免费领取!!

这篇关于python爬虫多线程实战:爬取美桌1080p壁纸图片的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:https://blog.csdn.net/weixin_68789096/article/details/130679291
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/373652

相关文章

MySQL 多列 IN 查询之语法、性能与实战技巧(最新整理)

《MySQL多列IN查询之语法、性能与实战技巧(最新整理)》本文详解MySQL多列IN查询,对比传统OR写法,强调其简洁高效,适合批量匹配复合键,通过联合索引、分批次优化提升性能,兼容多种数据库... 目录一、基础语法:多列 IN 的两种写法1. 直接值列表2. 子查询二、对比传统 OR 的写法三、性能分析

Python通用唯一标识符模块uuid使用案例详解

《Python通用唯一标识符模块uuid使用案例详解》Pythonuuid模块用于生成128位全局唯一标识符,支持UUID1-5版本,适用于分布式系统、数据库主键等场景,需注意隐私、碰撞概率及存储优... 目录简介核心功能1. UUID版本2. UUID属性3. 命名空间使用场景1. 生成唯一标识符2. 数

Python办公自动化实战之打造智能邮件发送工具

《Python办公自动化实战之打造智能邮件发送工具》在数字化办公场景中,邮件自动化是提升工作效率的关键技能,本文将演示如何使用Python的smtplib和email库构建一个支持图文混排,多附件,多... 目录前言一、基础配置:搭建邮件发送框架1.1 邮箱服务准备1.2 核心库导入1.3 基础发送函数二、

Javaee多线程之进程和线程之间的区别和联系(最新整理)

《Javaee多线程之进程和线程之间的区别和联系(最新整理)》进程是资源分配单位,线程是调度执行单位,共享资源更高效,创建线程五种方式:继承Thread、Runnable接口、匿名类、lambda,r... 目录进程和线程进程线程进程和线程的区别创建线程的五种写法继承Thread,重写run实现Runnab

Python包管理工具pip的升级指南

《Python包管理工具pip的升级指南》本文全面探讨Python包管理工具pip的升级策略,从基础升级方法到高级技巧,涵盖不同操作系统环境下的最佳实践,我们将深入分析pip的工作原理,介绍多种升级方... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

PowerShell中15个提升运维效率关键命令实战指南

《PowerShell中15个提升运维效率关键命令实战指南》作为网络安全专业人员的必备技能,PowerShell在系统管理、日志分析、威胁检测和自动化响应方面展现出强大能力,下面我们就来看看15个提升... 目录一、PowerShell在网络安全中的战略价值二、网络安全关键场景命令实战1. 系统安全基线核查

基于Python实现一个图片拆分工具

《基于Python实现一个图片拆分工具》这篇文章主要为大家详细介绍了如何基于Python实现一个图片拆分工具,可以根据需要的行数和列数进行拆分,感兴趣的小伙伴可以跟随小编一起学习一下... 简单介绍先自己选择输入的图片,默认是输出到项目文件夹中,可以自己选择其他的文件夹,选择需要拆分的行数和列数,可以通过

Python中反转字符串的常见方法小结

《Python中反转字符串的常见方法小结》在Python中,字符串对象没有内置的反转方法,然而,在实际开发中,我们经常会遇到需要反转字符串的场景,比如处理回文字符串、文本加密等,因此,掌握如何在Pyt... 目录python中反转字符串的方法技术背景实现步骤1. 使用切片2. 使用 reversed() 函

Python中将嵌套列表扁平化的多种实现方法

《Python中将嵌套列表扁平化的多种实现方法》在Python编程中,我们常常会遇到需要将嵌套列表(即列表中包含列表)转换为一个一维的扁平列表的需求,本文将给大家介绍了多种实现这一目标的方法,需要的朋... 目录python中将嵌套列表扁平化的方法技术背景实现步骤1. 使用嵌套列表推导式2. 使用itert

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker