Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用具有高级dom处理和cient端javascript处理的shell脚本进行刮取_Java_Javascript_Shell_Web - Fatal编程技术网

如何使用具有高级dom处理和cient端javascript处理的shell脚本进行刮取

如何使用具有高级dom处理和cient端javascript处理的shell脚本进行刮取,java,javascript,shell,web,Java,Javascript,Shell,Web,我有一个网站,它使用客户端验证,很少有其他过程,比如从客户端从其他网站获取数据。我已经在windows中用vb完成了(不允许使用第三方应用程序)。现在我想开始为shell编写同样的代码。因为我只剩下shell中的wget,它不在客户端处理javascript。因此,使用Shell内置的更好的应用程序,甚至是带有库的java应用程序都可以 vb中使用的一个简单的页面获取函数。因此,客户端处理后的所有网页内容都将被下载 Function IEGetPage(URL) Set IE = Creat

我有一个网站,它使用客户端验证,很少有其他过程,比如从客户端从其他网站获取数据。我已经在windows中用vb完成了(不允许使用第三方应用程序)。现在我想开始为shell编写同样的代码。因为我只剩下shell中的wget,它不在客户端处理javascript。因此,使用Shell内置的更好的应用程序,甚至是带有库的java应用程序都可以

vb中使用的一个简单的页面获取函数。因此,客户端处理后的所有网页内容都将被下载

Function IEGetPage(URL)
  Set IE = CreateObject("InternetExplorer.Application")
  IE.Navigate URL
  Do While IE.Busy
  Loop
  IEGetPage = IE.Document.Body.innerHTML
  IE.Stop
  IE.Quit
End Function
谢谢。

我建议使用。这允许您从Linux命令行shell在类似浏览器的环境中运行JavaScript。例如,您可以使用如下代码获取HTML页面并分析其DOM:

var page = require('webpage').create();
page.open(url, function (status) {
    if (status !== 'success') {
        ... handle error ...
    } else {
        ... = page.evaluate(function () {
            .. do something with document ...
        });
    }
    phantom.exit();
});

对不起,埃蒙恩,我漏掉了一点。这是shell,我只能使用Wget。因此,获得像Env这样的浏览器的最佳方法是使用unis JAVA库并执行它。。我要试穿一下。谢谢你的回复。!!