python数据解析中XPath有什么用
发表于:2025-11-16 作者:千家信息网编辑
千家信息网最后更新 2025年11月16日,这篇文章主要为大家展示了"python数据解析中XPath有什么用",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"python数据解析中XPath有什么用"
千家信息网最后更新 2025年11月16日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安全错误
数据库的锁怎样保障安全
为什么ipv6服务器便宜
实体 实体类型 数据库
g1v853x服务器
河北正规软件开发材料
天津虚拟服务器管理软件
商业软件开发要学什么语言
网络安全法解读+新华社
本地服务器连接显示屏后怎么用
农村信用社app服务器连接失败
租的服务器怎样访问
光学系统软件开发企业招聘会
数据库如何删除实体
网络安全宣传周河北
奥的斯服务器怎么重启
云南企业软件开发服务商
数据库九阴真经
简述数据库的连接方式
电竞比赛用什么服务器
服务器声音很响是什么原因
怀旧服什么服务器适合打副本
单片机应用软件开发
java推送服务器
网络安全威胁课后测验
l数据库销售管理系统
抢票软件开发用什么语言
又又网络技术
网络技术负责人职责
重庆农商行 软件开发
服务器运营管理员日常工作
苹果电脑当服务器可以吗