我有一个关于 JavaScript 和可以运行其代码的方法的问题。正如我们所知,标签中嵌入了一些 JavaScript 代码,它在浏览器窗口中本地运行——这很常见,这就是网页当前的工作方式。
如果我们想与我们正在浏览的网页进行开箱即用的交互,我们必须使用诸如 GreaseMonkey 之类的工具并编写我们的用户脚本,以使我们能够将页面行为更改为所需的行为。这仍然需要我们打开浏览器窗口并访问我们的目标。
问题是:我们能否在不打开浏览器窗口的情况下在某个页面上运行 JavaScript 代码?我的意思是,在理想的解决方案中,会有一个命令行工具允许我们调用:
./clibrowser http://google.com userscript.js
例如,在哪个脚本中,我们可以运行一些 AJAX 代码来获取来自查询的数据,并将其传递给其他一些 PHP 脚本,然后将其保存到数据库中。
我认为这个问题可以简化为:是否有任何工具,如带有 JavaScript 引擎的“命令行浏览器”? 我知道,这听起来可能很奇怪,但我只是因为我心中的想法而感到好奇。
最佳答案
就在这里。有 NodeJS,它在 Chrome 的 V8 javascript 引擎上运行:http://nodejs.org/ .
还有在 Java 上运行的 Rhino:http://www.mozilla.org/rhino/ .
关于这些的事情是它们不包含这样的“浏览器”......它们只是可以执行javascript的javascript引擎,但不提供开箱即用的解析/操作HTML的能力。但是,有一些基于这些引擎构建的 javascript 库可以为您简化大部分工作。
关于javascript - 在页面上运行 JavaScript 代码而不显示浏览器窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4471733/