XML读取--xPath技术

这篇博客介绍了XPath技术,作为解决通过DOM4J在深层XML结构中查找节点问题的解决方案。XPath主要应用于XML文档的快速节点定位,特别是在爬虫场景中。文章指出,使用XPath需要引入jaxen-xx-xx.jar,否则会遇到运行时异常,并提醒如果XML层次太深,建议使用迭代方式而非XPath。此外,博客还提供了XPath的基本使用方法和相关离线文档的下载链接。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言:

当使用dom4j查询比较深的层次结构的节点 很麻烦!!!

之前写的几篇博客关于XML的读取都是通过一层一层查找下去,这样的代码冗余难看,也加重了负担,这个时候xPath技术就应运而生了。

老样子:三个问题:

xPath是什么?
xPath怎么用?
xPath运用场景?
xPath是什么?

xPath了解

主要是用于快速获取所需的节点对象。是针对XML结构而言。

xPath运用场景?

爬虫(爬取XML结构的节点内容)

我也百度了挺多内容,不过 关于xPath技术的内容不多,而且都比较老,但还是来学习一下吧。简单了解下 以后要是用到了再来学习。

有很多种方法调用xPath技术
这里也就来介绍用Dom4j来操作xPath。

因为Dom4j内置了jar包支持xPath技术。
Dom4j下载

问题:
dom4j-2.1.0源码下载后并没有找到支持xPath的jar包
而dom4j-1.6.1源码下载后有jaxen-1.1-beta-6.jar 这个才是关键
具体原因我也不知道……百度google半天没找到 原因 ,要是有人知道 麻烦告诉我一下,谢谢。

注意:

1. 采用xpath查找需要引入jaxen-xx-xx.jar,否则会 java.lang.NoClassDefFoundError: org/jaxen/JaxenException异常。
2. 如果层次太深还是不建议用xPath,而是用迭代取出,不然会爆内存

jaxen-1.1-beta-6.jar位置:dom4j-dom4j_1_6_1–>lib–>jaxen-1.1-beta-6.jar

导入:

前提先导入dom4j核心包:
dom4j-1.6.1.jar或者dom4j-2.1.0.jar都可以
然后导入jaxen-1.1-beta-6.jar放入项目中的lib文件夹 然后右键build path–>add to build path
效果图:
这里写图片描述

使用xpath方法

List<Node>  selectNodes("xpath表达式"<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值