XML系列(二)之 XML解析

一. java中配置文件的三种配置位置及读取方式

1.1 同包路径下

获取同包下的配置文件,将其转换为流对象。
将该对象加载到工具类中。
在这里插入图片描述

1.2 根目录下

在Java Reasources下的文件夹下
在这里插入图片描述

1.3 WEB-INF安全路径下

在这里插入图片描述

二. dem4j的使用

dom4j介绍
dom4j的项目地址:http://sourceforge.net/projects/dom4j/?source=directory

dom4j是一个简单的开源库,用于处理XML、 XPath和XSLT,它基于Java平台,使用Java的集合框架,全面集成了DOM,SAX和JAXP。
这里案例使用的是SAXreader。

2.1 selectNodes 获取标签

List selectNodes = read.selectNodes(“/students/student”);

2.2 selectSingleNode 获取单个标签

Element single = (Element) stuEle.selectSingleNode(“name”);

2.3 getText 获取文本内容

String text = single.getText();

2.4 attributeValue 获取标签的属性值

String attributeValue = stuEle.attributeValue(“sid”);

** 示例xml文件**

<?xml version="1.0" encoding="UTF-8"?>
<students>
	<student sid="s001">
		<name>小明</name>
	</student>
	<student sid="s002">
		<name>小芳</name>
	</student>
	<student sid='s003'>
		<name>小王</name>
	</student>
</students>

在这里插入图片描述

三. xpath的使用

XPath(全称:XML Path Language)即 XML 路径语言,它是一门在 XML 文档中查找信息的语言,最初被用来搜寻 XML 文档,同时它也适用于搜索 HTML 文档。因此,在爬虫过程中可以使用 XPath 来提取相应的数据。
案例: 同样的用到上面的students.xml,通过sid=s002查找到对应的姓名
在这里插入图片描述
这里是通过定位到配置文件的路径,根据属性拿到对应的名字。

xpath路径表达式

表达式描述
node_name选取此节点的所有子节点。
/绝对路径匹配,从根节点选取。
//相对路径匹配,从所有节点中查找当前选择的节点,包括子节点和后代节点,其第一个 / 表示根节点。
.选取当前节点。
选取当前节点的父节点。
@选取属性值,通过属性值选取数据。常用元素属性有 @id 、@name、@type、@class、@tittle、@href。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不念那年晚春

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值