How to filter javascript from specific urls in Htm

2019-08-15 19:25发布

问题:

HtmlUnit takes lot of time to execute javascript, i would like to know if its possible to make HtmlUnit not to load javascript from url regex filters.

回答1:

Not exactly, you can't only disable javascript as a whole (probably you already know it):

final WebClient webClient = new WebClient();
webClient.getOptions().setJavascriptEnable(false);

but you can use a ScriptPreProcessor the javascript, and erase what you don't want:

webClient.setScriptPreProcessor(new ScriptPreProcessor() {

        @Override
        public String preProcess(HtmlPage htmlPage, String sourceCode, String sourceName, int lineNumber, HtmlElement htmlElement) {
            if (match...)
            return "";
        }
    });