0

我有一个可以读取 URL 源并保存到文件(source.html)的 Java 代码,现在从保存的页面中,我想使用 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());
    }
}
4

1 回答 1

0

通常(跨语言)XPath 将应用于 DOM 结构。在 php 中有一个标准程序:

  1. 获取html
  2. 使其成为有效的 xml(可能是可选步骤)
  3. 使它成为一个 DOMDocument 对象实例
  4. 使它成为一个 DOMXPath 对象实例
  5. 将 xpath 查询应用于此 DOMXPath 实例。请参阅php 中的示例

我认为JAVA中应该有类似的东西。

于 2015-05-18T09:34:43.033 回答