Java连接到网页然后执行JavaScript

时间:2016-06-14 12:49:27

标签: javascript java linux connection webpage

我在procedure.js

中有一个JavaScript脚本

当我在浏览器(谷歌浏览器)上时,我可以打开开发者控制台,然后复制粘贴我的脚本,在我正在查看的网页上执行它。

但现在我正在尝试使用Java(或Linux shell?)自动执行此操作。

我希望我的Java程序打开网页,然后在这个网页上执行procedure.js.

我该怎么做?谢谢你的帮助

3 个答案:

答案 0 :(得分:1)

编写一个Java应用程序,在WebView中加载页面,并使用WebEngine.executeScript()来执行JavaScript。

关于如何在这个问题上做到这一点有一个非常好的描述: Execute a Javascript function for a WebView from a JavaFX program

答案 1 :(得分:1)

如果目标是在您的Facebook帐户中执行操作,则正确的方法是使用Facebook API。

official Facebook Developers site就是你要去的地方:

  1. 注册您的应用。
  2. 找到您需要的所有文档。
  3. 这种方法的主要好处是:

    1. 官方支持API。
    2. 从长远来看,API更有可能继续发挥作用。 Facebook确实一次又一次地改变他们的网站。
    3. 你可以把它放在你的简历上。

答案 2 :(得分:1)

使用像phantom JS这样的无头浏览器而不是java。

然后,然后使用include.js包含您的脚本:

以下示例:

var page;
page = require('webpage').create();

page.onLoadFinished = function(status) {
    if (status === 'success') {
        page.includeJs('http://some/js/file.js', function() {
            doSomething();
            phantom.exit();
        });
    } else {
        console.log('Connection failed.');
        phantom.exit();
    }
};

page.open("http://url/of/website");

要运行,请另存为.js文件,然后执行幻像name-of-js-file.js