python爬⾍系列之html页⾯解析:如何写xpath路径
⼀、前⾔
上⼀节我们讲了怎么批量下载壁纸,虽然爬⾍的代码很简单,但是却有⼀个很重要的问题,那就是 xpath路径应该怎么写。
这个问题往往会被我们忽略,但 xpath路径的写法是很重要的。不同的 xpath路径写法会后续爬取代码会产⽣很⼤影响,⽽且不同的 xpath写法的稳定性也不同,能不能写出优雅稳定的代码就要看 xpath写得好不好了。
下⾯我们来讲讲为什么 xpath的写法这么重要
⼆、为什么 xpath写法很重要
我们拿⼏个例⼦来讲讲不同 xpath写法对代码的影响,以我的个⼈主页作为解析对象:
python爬⾍猫的个⼈主页
现在的需求是要爬取我个⼈主页⾥的⽂章列表,包括⽂章的链接、标题、访问量、评论数和点赞数量
个⼈主页
爬之前我们先分析⼀下
1、爬什么:⽂章链接⽂章的链接、标题、评论数和点赞数量
2、怎么爬:requests请求⽹页、xpath解析⽹页
接下来正式开始爬取:
第⼀步:分析⽹页,写出图⽚的 xpath路径
第⼆步:⽤ requests库获取⽹页
第三步:使⽤ lxml库解析⽹页
第四步:把爬取到的信息保存下来
我们⼀步⼀步来,⾸先分析⽹页,写出 xpath
按 F12进⼊开发者模式,到⽂章列表所在的标签
⽽第⼀种写法把链接、标题、评论数和点赞数量这四个分别⽤列表存储,这样虽然同样可以获得结果,但是再进⾏数据处理的时候就需要考虑怎么才能不破坏四个变量之间的⼀⼀对应关系。
⽤第⼆种⽅法就没有这个问题,因为在处理数据的时候它们都被看作同⼀个对象的组成部分,这本⾝就蕴含着蕴含着⼀种关系。
现在问题来了,平时我们在爬取数据的时候,怎么才能判断哪些数据是同⼀个对象呢?
html ul标签这个其实很简单,在我们分析需求的时候就已经知道了,我们所需要数据的⼀个完整组合就是⼀个对象。
⽐如在本⽂的例⼦⾥,我们要爬取链接、标题、评论数和点赞数量,那么{链接,标题,评论数,点赞数量}就是⼀个对象。
上⼀篇:python爬⾍系列之 xpath实战:批量下载壁纸
下⼀篇:python爬⾍系列之数据的存储(⼀):json库的使⽤

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。