返回

提问 添加收藏

JSoup 直接抓取 URL 时对内容长度限制的解决办法

红薯 发布于 2017年11月24日 (共有3个回帖)

JSoup 不只是一个 HTML 的解析器,它自带的 HTTP 客户端包非常好用,而且很简单,至少比 HttpClient 要简单好多。

但是在使用过程中发现在读取一些内容很大的不管文本或者图片时都会被截断。净研究发现默认 JSoup 的限制是 1024*1024,也就是 1M 的大小。

因此我们需要在连接时设置一下 maxBodySize ,具体方法如下:

Document = 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();

设置为 0 表示不限制大小,不过谨慎使用哦:)

jsoup
文明上网,理性发言
客户端 Android iPhone WP7