我正在开展一个涉及访问网页,输入搜索字词以及检索有关该搜索字词的信息的项目。输入搜索词将导致重定向,因此我调用了
webClient.waitForBackgroundJavascript();
这个想法是,一旦所有的javascript重定向完成,这将返回0。然而,它似乎一直停留在返回6.运行一个单独的时间,它坚持10.什么原因可能导致这不完成?到目前为止,我已经等了大约10分钟,网页几乎立即加载到普通浏览器中。
答案 0 :(得分:0)
您是否尝试将长值作为参数传递给此函数?我假设你有,但为了以防万一,传递给此方法的长值等待返回仍在进行中的javascript后台作业数量之前的时间量(以毫秒为单位)。所以,如果你这样做:
webClient.waitForBackgroundJavascript(10000);
这意味着十秒钟后您将恢复正在进行的后台作业的数量。如果它停留在某个返回值,则意味着已经启动的后台进程尚未在指定时间内完成。
检查以确保您在javascript代码中的setInterval()
函数上没有任何循环。
另作参考:The HTMLUnit Docs