
Java
Javaimport org.JSoup.JSoup;import org.JSoup.nodes.Document;import org.JSoup.nodes.Element;import org.JSoup.select.Elements;import Java.io.IOException;public class JSoupExample { public static void mAIn(String[] args) { try { // 从指定的 URL 获取 HTML 文档 Document doc = JSoup.connect("https://example.com").get(); // 提取页面的标题 String title = doc.title(); System.out.println("页面标题: " + title); // 提取页面中的所有链接 Elements links = doc.select("a[href]"); for (Element link : links) { String linkText = link.text(); String linkHref = link.attr("href"); System.out.println("链接文本: " + linkText); System.out.println("链接地址: " + linkHref); } } catch (IOException e) { e.printStackTrace(); } }}使用 XPath 解析 XMLXPath 是一种用于在 XML 文档中定位元素的语言。Java 提供了许多库和工具,可以使用 XPath 解析和操作 XML 数据。在这里,我们将使用 Java 的内置 XPath 支持来解析 XML 文件。下面是一个简单的示例代码,演示了如何使用 XPath 解析 XML 文件并提取特定元素的值:Javaimport Javax.XML.parsers.DocumentBuilder;import Javax.XML.parsers.DocumentBuilderFactory;import Javax.XML.xpath.XPath;import Javax.XML.xpath.XPathConstants;import Javax.XML.xpath.XPathExpression;import Javax.XML.xpath.XPathFactory;import org.w3c.dom.Document;import org.w3c.dom.NodeList;public class XPathExample { public static void mAIn(String[] args) { try { // 创建一个 DocumentBuilder 对象 DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newDocumentBuilder(); // 从 XML 文件中加载文档 Document doc = builder.parse("data.XML"); // 创建一个 XPath 对象 XPathFactory xPathfactory = XPathFactory.newInstance(); XPath xpath = xPathfactory.newXPath(); // 编译 XPath 表达式 XPathExpression expr = xpath.compile("//book[price>10]/title/text()"); // 在文档中执行 XPath 表达式 Object result = expr.evaluate(doc, XPathConstants.NODESET); NodeList nodes = (NodeList) result; // 提取并打印匹配的元素值 for (int i = 0; i < nodes.getLength(); i++) {</p> System.out.println("书名: " + nodes.item(i).getNodeValue()); } } catch (Exception e) { e.printStackTrace(); } }}Java 提供了许多强大的 HTML/XML 解析器,如 JSoup 和内置的 XPath 支持。使用这些解析器,我们可以轻松地解析和操作 HTML 或 XML 数据,从中提取所需的信息。无论是处理 Web 页面还是处理 XML 数据,这些解析器都可以帮助我们更高效地完成工作。Copyright © 2025 IZhiDa.com All Rights Reserved.
知答 版权所有 粤ICP备2023042255号