繁体   English   中英

如何在Java中使用Rhino执行JavaScript?

[英]How to execute javascript with rhino in java?

在String变量中给出网页的HTML,如何使用Rhino在其中执行JavaScript?

我读过Rhinos主页上的教程没有任何运气。

您可以使用Java脚本引擎JSR-223。

ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine jsEngine = mgr.getEngineByName("JavaScript");
try {
    jsEngine.eval("print('Hello, world!')");
} catch (ScriptException ex) {
      ex.printStackTrace();
}

Java脚本程序员指南

HtmlUnit是在Rhino之上构建的产品,它可以测试包含客户端JavaScript的Web应用程序。 我自己并没有使用过它,而是推荐给了一位对此感到非常满意的开发人员。

很难知道这是否是您想要的,因为您最初的问题并未说明您为什么要首先执行JavaScript。

您不能以任何直接方式做到这一点。 Rhino是JavaScript解释器,但这并不意味着它可以完成Web浏览器的工作。

您的HTML源代码中可能包含<script>块,并且可能引用了外部脚本。 即使您能够从HTML中提取脚本源(您必须要做的,因为Rhino完全不了解HTML),您仍将面临一个更大的问题:DOM。

您可能应该使用的是某种嵌入式(或从属)浏览器解决方案。

Rhino仅允许您执行独立的JavaScript。

如果要在HTML中运行JavaScript,则需要使用浏览器来提供运行时-您可以使用WebDriver。

你想做什么 ?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM