我正在使用 spring boot 和 Jsoup 来解析 html 页面。我正在按如下方式连接页面:
try {
doc = Jsoup.connect(SOME_URL)
.userAgent("Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36")
.referrer("http://www.google.com")
.timeout(5000)
.get()
} catch (IOException e) {
e.printStackTrace();
}
Jsoup 将 url 参数从: name=%F2%EE%E5%F1%20%FA%EE%ED
对此:name=%25F2%25EE%25E5%25F1%2520%25FA%25EE%25ED
name 参数是希伯来语字符,我将其转换为正确的参数,如果我将给定的 URL 粘贴到 chrome 中,它可以工作,但在我粘贴从 jsoup 给出的 url 后,它就不是了(我从元素库 url 中获取它(
如何强制 Jsoup 在不更改 url 的情况下连接到 url?
谢谢:)
我使用过:
url = new URL(SOME_URL);
connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
connection.connect();
inputStream = connection.getInputStream();
doc = Jsoup.parse(inputStream, null, WebUtils.WEB_BASE);
似乎空参数导致 Jsoup 从 html 标头中获取字符集