【问题标题】:Periodic web pages loading定期网页加载
【发布时间】:2017-04-10 16:34:07
【问题描述】:

我正在用 java 开发一个机器人,我需要它定期加载一个网页,并计算出所有的 javascript。为此,我使用了 ScheduledExecutorService 和 JavaFX WebEngine。我的预定服务运行良好,它已经过日志测试,但是一旦我使用 WebEngine 添加页面加载,它会突然停止预定服务...

在服务之前,我使用不同的 WebEngine 对象来获取其中使用的 url。该代码打印我“已执行!”一次并停止。但是,如果我删除带有“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
            );

感谢您的帮助,如果您不知道如何解决,我愿意接受该任务的任何其他解决方案。

【问题讨论】:

    标签: java javafx scheduledexecutorservice javafx-webengine


    【解决方案1】:

    非常感谢你们的帮助!!! -_-

    最后我通过使用 Selenium 而不是 JavaFX WebEngine 解决了这个问题。这有点慢,但是在使用 HtmlUnit 加载网页时会自动管理 js 加载和渲染。

    和平

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-02-20
      • 2012-07-12
      • 1970-01-01
      • 2018-04-08
      • 2019-09-19
      • 2010-10-09
      • 2014-11-11
      • 1970-01-01
      相关资源
      最近更新 更多