xpath转换html格式,使用xPath读取html文件

本文介绍使用DOM4J结合XPath解析HTML文件的方法,并通过示例代码展示如何读取HTML文件中的联系人信息。

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

读取一个html文件中的联系人的所有信息

html文件:personList.html

传智播客1月18号班通讯录

12月16号就业班通讯录

编号姓名性别年龄地址电话

001张三男18广州市天河区134000000000002李四女20广州市越秀区13888888888002郭靖男30广州市番禺区1342214321

实现的主程序:Demo_xPath_html.java

package xPath;

import java.io.File;

import java.util.List;

import org.dom4j.Document;

import org.dom4j.Element;

import org.dom4j.io.SAXReader;

public class Demo_xPath_html {

public static void main(String[] args) throws Exception{

Document doc = new SAXReader().read(new File("./src/personList.html"));

System.out.println(doc);

//读取title标签

Element titleElem = (Element) doc.selectSingleNode("//title");

String title = titleElem.getText();

System.out.println(title);

/*

* 练习:读取联系人的所有信息

* 按照以下格式输出:

* 编号:001 姓名:。。。

* 。。。

*/

//1.读取出所有的tbody中的tr标签

List list = (List)doc.selectNodes("//tbody/tr");

//2.遍历

for(Element elem : list) {

//编号

//String id = ((Element)elem.elements().get(0)).getText();//方法一

String id = ((Element)elem.selectSingleNode("td[1]")).getText();//方法二

String name = ((Element)elem.elements().get(1)).getText();

String gender = ((Element)elem.elements().get(2)).getText();

String age = ((Element)elem.elements().get(3)).getText();

String address = ((Element)elem.elements().get(4)).getText();

String phone = ((Element)elem.elements().get(5)).getText();

System.out.println("编号:"+id+"\t姓名:"+name+"\t性别:"+gender+"\t地址:"+address+"\t电话:"+phone);

}

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值