我目前正在创建一个自动机器人进入某个网站并执行重复性任务。我使用JavaFX和WebEngine来做到这一点。问题是,这个网页有时需要很长时间才能加载,而且我不一定需要它才能完全加载。
我正在使用WebEngine的监听器,因此在加载完成后它将继续执行它的任务,但就像我说这是一个问题,有时需要几分钟才能加载。
所以我的问题是,是否有某种方法可以在一段时间后停止加载,以便监听器告诉我的程序加载完成?这是我的倾听者:
webEngine.getLoadWorker().stateProperty().addListener(new ChangeListener<Worker.State>() {
@Override
public void changed(ObservableValue<? extends Worker.State> observableValue,
Worker.State oldState, Worker.State newState) {
if (newState == Worker.State.SUCCEEDED) {
loaded = true;
System.out.println("true");
start();
}
}
});
答案 0 :(得分:0)
您可以设置计时器,即1分钟后停止加载页面
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
// Stop loading page
}
}, 60*1000);