簡體   English   中英

在 JAVA 中使用 Xpath 解析 HTML 文件

[英]Parsing HTML file using Xpath in JAVA

我有一個 Java 代碼,它可以讀取 URL 的源代碼並保存到文件 (source.html),現在從保存的頁面中,我想使用 XPath 提取一些值。 假設我想讀取價格 - //div [@itemprop='price'] //text ()

如何進一步執行此操作,我是否可以直接在保存的 HTML 頁面中執行此操作,或者我應該首先將其轉換為 XML 文件,然后使用 XPath。 我聽說過 HTML 清潔器/解析器,我應該在這里使用它嗎? 請不要指向其他網站尋求答案。 如果是這樣,請將我帶到一個可以進行直接和簡單課程的地方。 修改以下代碼將非常有幫助。

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

import org.jsoup.Jsoup;

public class jSoupContentRead {
    @SuppressWarnings("resource")
    public static void main(String[] args) throws IOException {
        FileWriter FR = new FileWriter("source.html");
        PrintWriter op = new PrintWriter(FR);

        org.jsoup.nodes.Document doc = Jsoup.connect(
                "http://itunes.apple.com/us/book/a-way-home/id982665320?mt=11")
                .get();

        op.write(doc.toString());
        System.out.println(doc.toString());
    }
}

通常(跨語言)XPath 將應用於 DOM 結構。 在 php 中有一個標准程序:

  1. 獲取 html
  2. 使其成為有效的 xml(可能是可選步驟)
  3. 使其成為 DOMDocument 對象實例
  4. 使其成為 DOMXPath 對象實例
  5. 將 xpath 查詢應用於此 DOMXPath 實例。 請參閱php 中示例

我認為JAVA中應該有類似的東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM