html-parsing – 如何将Jsoup文档转换为W3C文档?

我通过解析内部 HTML页面构建了一个Jsoup文档,
public Document newDocument(String path) throws IOException {

    Document doc = null;
    doc = Jsoup.connect(path).timeout(0).get();
            return new HtmlDocument<Document>(doc);
}

我想将Jsoup文档转换为我的org.w3c.dom.Document
我使用了一个可用的库DOMBuilder但是在解析时我将org.w3c.dom.Document视为null.我无法理解这个问题,尝试搜索但无法找到任何答案.

用于生成W3C DOM文档的代码

Document jsoupDoc=factory.newDocument("http:localhost/testcases/test_2.html"));
org.w3c.dom.Document docu= DOMBuilder.jsoup2DOM(jsoupDoc);

有人可以帮我这个吗?

解决方法

To retrieve a jsoup document via HTTP,调用Jsoup.connect(…).get(). To load a jsoup document locally,调用Jsoup.parse(新文件(“…”),“UTF-8”).

对DomBuilder的调用是正确的.

当你说,

I used an available library DOMBuilder for this but when parsing I
get org.w3c.dom.Document as null.

我认为你的意思是,“我使用了一个可用的库,DOMBuilder,但是在打印结果时,我得到[#document:null].”至少,这是我在尝试打印w3cDoc对象时看到的结果 – 但这并不意味着该对象为null.我能够通过调用getDocumentElement和getChildNodes来遍历文档.

public static void main(String[] args) {
    Document jsoupDoc = null;

    try {
        jsoupDoc = Jsoup.connect("https://stackoverflow.com/questions/17802445").get();
    } catch (IOException e) {
        e.printStackTrace();
    }

    org.w3c.dom.Document w3cDoc= DOMBuilder.jsoup2DOM(jsoupDoc);
    Element e = w3cDoc.getDocumentElement();
    NodeList childNodes = e.getChildNodes();
    Node n = childNodes.item(2);
    System.out.println(n.getNodeName());
}

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在&#39;&#39;,则表示换行,用&#39;&#39;切割。
代码实现 option = { backgroundColor: &amp;#39;#080b30&amp;#39;, tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...