阻止 HtmlUnit 2.13 执行 JavaScript

2022-09-03 06:14:50

这是我获取页面的代码:

WebClient webClient = new WebClient();
HtmlPage page = webClient.getPage(url);

问题是总是自动执行javascript,并给我一个错误列表。我只想获得原始来源。如何防止它执行脚本?我发现在2.9版本中有一种方法:webClient

webClient.setJavaScriptEnabled(false);

但函数已被弃用。有人知道如何解决这个问题吗?请帮帮我。非常感谢。setJavaScriptEnabled()


答案 1

尽管已弃用,但它已添加到 .这是文档setJavaScriptEnabled(boolean)WebClientOptionsWebClient

为了禁用JavaScript,你应该这样做:

webClient.getOptions().setJavaScriptEnabled(false);

此外,如果您想从网页中获取原始HTML代码,则应查看以下问题:

如何在忽略JavaScript和CSS的情况下获得HTMLUnit中页面的纯原始HTML?

考虑到即使该方法也会更改您获取的网页的格式和内容(即使禁用了JavaScript)。asXml()


答案 2