定期网页加载
Periodic web pages loading
我正在 java 中开发一个机器人,我需要它定期加载一个网页,并计算出所有 java 脚本。为此,我使用了 ScheduledExecutorService 和 JavaFX WebEngine。我的预定服务运行良好,已经用日志进行了测试,但是一旦我添加了使用 WebEngine 加载的页面,它突然停止了预定服务...
在服务之前,我使用不同的 WebEngine 对象来获取其中使用的 url。该代码打印 me "Executed!" 一次并停止。但是,如果我删除带有 "engine.load(..." 的行,它会每 5 秒执行一次
这是我的服务代码:
ScheduledExecutorService updateService = Executors.newScheduledThreadPool(5);
WebEngine engine = this.updateEngine;
ScheduledFuture scheduledFuture =
updateService.scheduleWithFixedDelay(new Runnable(){
@Override
public void run() {
System.out.println("Executed!");
Maj job = jobsCycle.getNextMaj();
engine.load(job.getURL());
}
},
0,
5,
TimeUnit.SECONDS
);
感谢您的帮助,如果您不知道如何解决它,我愿意为该任务提供任何其他解决方案。
非常感谢你们的帮助!!! -_-
最后我通过使用 Selenium 而不是 JavaFX WebEngine 解决了这个问题。这有点慢,但是当使用 HtmlUnit 加载网页时,js 加载和呈现是自动管理的。
和平
我正在 java 中开发一个机器人,我需要它定期加载一个网页,并计算出所有 java 脚本。为此,我使用了 ScheduledExecutorService 和 JavaFX WebEngine。我的预定服务运行良好,已经用日志进行了测试,但是一旦我添加了使用 WebEngine 加载的页面,它突然停止了预定服务...
在服务之前,我使用不同的 WebEngine 对象来获取其中使用的 url。该代码打印 me "Executed!" 一次并停止。但是,如果我删除带有 "engine.load(..." 的行,它会每 5 秒执行一次
这是我的服务代码:
ScheduledExecutorService updateService = Executors.newScheduledThreadPool(5);
WebEngine engine = this.updateEngine;
ScheduledFuture scheduledFuture =
updateService.scheduleWithFixedDelay(new Runnable(){
@Override
public void run() {
System.out.println("Executed!");
Maj job = jobsCycle.getNextMaj();
engine.load(job.getURL());
}
},
0,
5,
TimeUnit.SECONDS
);
感谢您的帮助,如果您不知道如何解决它,我愿意为该任务提供任何其他解决方案。
非常感谢你们的帮助!!! -_-
最后我通过使用 Selenium 而不是 JavaFX WebEngine 解决了这个问题。这有点慢,但是当使用 HtmlUnit 加载网页时,js 加载和呈现是自动管理的。
和平