在JAVA中使用Xpath解析HTML文件



我有一个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. 对这个DOMXPath实例应用xpath查询。参见php中的示例。

相关内容

  • 没有找到相关文章