0

我正在尝试使用 Jsoup 从网站获取一大堆链接。我的计划是从 url 中获取整个 html 并稍后提取链接。但是,只获取了整个 html 代码的一部分。

public static void main(String[] args) {    
    System.out.println("parsing test");

    try {

        Document doc = Jsoup.connect("http://mangafox.com/manga").get();
        System.out.print(doc);

    } catch (Exception e) {}

}

当我将打印输出与浏览器中的原始 html 代码进行比较时,似乎它从字母 m 的中间某处开始,并在字母 o 附近结束。

4

2 回答 2

2

万一其他人在这里结束...

Document doc = Jsoup.connect(url)
    .header("Accept-Encoding", "gzip, deflate")
    .userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:23.0) Gecko/20100101 Firefox/23.0")
    .maxBodySize(0)
    .timeout(600000)
    .get();

通过-http://jmchung.github.io/blog/2013/10/25/how-to-solve-jsoup-does-not-get-complete-html-document/

于 2015-05-26T14:38:37.243 回答
0

发生这种情况是因为System.out.print(至少在 Eclipse 中)有字符限制。Html 页面大于该限制,这就是您在控制台中看不到整个文档的原因。

您可以像这里描述的那样增加控制台缓冲区大小。

或者像这样打印你html的文件:

public static void main(String[] args) {    
   try {
        Document doc = Jsoup.connect("http://mangafox.com/manga").get();
        //System.out.print(doc);

        //write to document
        PrintWriter out = new PrintWriter("output.txt");
        out.print(doc.toString());
        out.close();
    } catch (Exception e) {}

}
于 2013-07-17T10:23:14.727 回答