无法将完整的html页面解析为文档

时间:2015-09-17 11:41:12

标签: java html parsing html-parsing jsoup

在这段代码中,我想将整个html文件(本地)解析为文档变量,但我发现它只解析了不到10%的内容。请帮助!!

Document doc=null;
HashSet<String>urlSet=null;
try {
    doc = Jsoup.parse(file,null);
} catch (IOException e) {
    e.printStackTrace();
    return urlSet;
}

urlSet=getLinks(doc);
if(urlSet!=null)
    urlSet=refineURLs(urlSet);
return urlSet;

1 个答案:

答案 0 :(得分:0)

我认为这是因为html中的相对链接。 请改用:

String html = readFile(file.getAbsolutePath(), Charset.defaultCharset());
doc = Jsoup.parse(html, "https://en.wikipedia.org/wiki/Developmental_biology");

private static String readFile(String path, Charset encoding) throws IOException {
    byte[] encoded = Files.readAllBytes(Paths.get(path));
    return new String(encoded, encoding);
}