You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何调用Jsoup.parse(URL字符串)返回不完整HTML文档?

问题根源与解决方案

你遇到的问题其实是用错了Jsoup的方法!

为什么会返回不完整的内容?

你调用的Jsoup.parse("https://www.example.com"),其中parse(String html)方法的设计初衷是解析一段HTML字符串,而不是通过URL抓取网页。当你直接传入网址时,Jsoup会把这个网址当成纯文本内容来处理,自然就只会生成一个包含该URL的简单HTML结构,根本不会去请求目标网页。

正确的做法:用Jsoup.connect()抓取网页

要获取目标网站的完整HTML内容,你需要使用Jsoup.connect(String url).get()方法,这个方法会帮你发起HTTP请求,获取网页的真实HTML代码后再解析成Document对象。

修改后的代码应该是这样的:

System.out.println(Jsoup.connect("https://www.example.com").get());

运行这段代码,你就能看到包含两个<p>标签的完整页面内容了。

额外小提示

如果遇到网站有反爬机制(比如拒绝无User-Agent的请求),可以给请求添加模拟浏览器的请求头,比如:

Document doc = Jsoup.connect("https://www.example.com")
                    .userAgent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36")
                    .timeout(5000) // 设置5秒超时
                    .get();
System.out.println(doc);

内容的提问来源于stack exchange,提问作者Bar Akiva

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 10:34:59