python数据解析中XPath有什么用
发表于:2025-02-13 作者:千家信息网编辑
千家信息网最后更新 2025年02月13日,这篇文章主要为大家展示了"python数据解析中XPath有什么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"python数据解析中XPath有什么用"
千家信息网最后更新 2025年02月13日python数据解析中XPath有什么用
这篇文章主要为大家展示了"python数据解析中XPath有什么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"python数据解析中XPath有什么用"这篇文章吧。
XPath
XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。
xpath是最常用且最便捷高效的一种解析方式,通用型强,其不仅可以用于python语言中,还可以用于其他语言中,数据解析建议首先xpath。
XPath使用方法
xpath解析原理:
实例化一个etree的对象,且需要将被解析的页面源代码数据加载到该对象中
调用etree对象中的xpath方法结合着xpath表达式实现标签的定位和内容的捕获
安装lxml
pip install -i https://mirrors.aliyun.com/pypi/simple/ lxml
from lxml import etreetree = etree.parse('./tree.html') #从本地加载源码,实例化一个etree对象。必须是本地的文件,不能是字符串tree = etree.HTML(源码) #从互联网加载源码,实例化etree对象# / 表示从从根节点开始,一个 / 表示一个层级,//表示多个层级r = tree.xpath('//div//a') #以列表的形式返回div下的所有的a标签对象的地址r = tree.xpath('//div//a')[1] #返回div下的第二个a标签对象地址r = tree.xpath('//div[@class="tang"]') #以列表的形式返回tang标签地址r = tree.xpath('//div[@class="tang"]//a') #以列表的形式返回tang标签下所有的a标签地址#获取标签中的文本内容r = tree.xpath('//div[@class="tang"]//a/text()') #以列表的形式返回所有a标签中的文本#获取标签中属性值r = tree.xpath('//div//a/@href') ##以列表的形式返回所有a标签中href属性值
tree.html
xpaht测试 百里守约
前程似锦
前程似锦2
#后面改了名字以梦为马
案例-58二手房
将页面中的房源名称解析出来,即将title值解析出来就行
思路
获取房源名称所在的url,并获取其响应数据
数据解析,构造xpath表达式。提取目标数据
import requestsfrom lxml import etreeurl = "https://bj.58.com/ershoufang/p1/"headers={ 'User-Agent':'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Mobile Safari/537.36'}pag_response = requests.get(url,headers=headers,timeout=3).text#实例化一个etree对象tree = etree.HTML(pag_response)r = tree.xpath('//span[@class="content-title"]/text()') #获取所有//span标签为"content-title"的文本内容print(r)
Tips:我们使用xpath进行数据解析时,不能直接看元素就进行构造xpath表达式,以为很多情况下从浏览中看的元素结构和爬取下来的源码结构不一样。所以正确方法是先将源码爬下来再观察进行构造xpath。
如下浏览器中的元素结构和爬取的元素结构就不一样。如果按照浏览器汇总的元素来构造xpath表达式,则不会解析成功!
以上是"python数据解析中XPath有什么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!
标签
数据
对象
内容
元素
形式
源码
地址
实例
结构
表达式
语言
文本
方法
篇文章
浏览
前程
前程似锦
名称
层级
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
中国ip代理服务器
搭建tomcat流媒体服务器
网络安全企业西北市场分析
与服务器无法建立安全连接
如何一次请求多个数据库
数据库中state
服务器卡通图
软件开发过程中的tpsa
思科网络技术学院第6版免费
什么是nat服务器及其作用
汰汝互联网科技
软件开发pr
可信网络技术研究与应用
数据库系统安全需求
计算机网络技术开场
小文件存数据库和存磁盘
中国国家动植物数据库
第二个信息网络安全时代
数据库的题目
服务器怎么装win7系统
数据库下拉列表怎么做
服务器任务管理器线路速度
网络安全电影视频
监控平台软件开发定制
小米科技互联网秋招
服务器终端授权
儿童网络安全简报
网络安全我联践行手抄报
中国国家动植物数据库
网络技术服务开票内容