【问题标题】:JSoup to parse <script> tagJSoup 解析 <script> 标签
【发布时间】:2012-02-18 02:51:57
【问题描述】:

我有一个带有 javascript 的 HTML,如下所示。

<script type="text/javascript">
if (mnt) {
      event.update();
} else {
      event.delete();;
}
cf.lmt('45000', '1131452100000', '');</script>

我如何使用 JSoup 来解析这个脚本标记并获取脚本最后一行中存在的值 '1131452100000'。(这不过是一个参数)。任何意见表示赞赏。

【问题讨论】:

    标签: java javascript parsing jsoup


    【解决方案1】:

    恐怕您无法使用Jsoup 解析javascript 来提取数据。基本上 Jsoup 是一个 HTML 解析器,而 HTML 和 javascript 是完全不同的东西。即使 javascript 中没有 jsoup 可以理解的 HTML 标签,您也可以看到。

    您可以做一件事,将&lt;script&gt;&lt;/script&gt; 标签之间的所有内容加载到一个字符串中,然后使用regex 获取所需的内容。

    这是一个不错的Regex Java Tutorial

    或者您可以尝试使用Rhino from Mozilla 并使用它的集成库。

    【讨论】:

      【解决方案2】:

      您不能使用 JSoup。它是一个 HTML 解析器而不是 Javascript 解析器。试试犀牛。你应该有javax.script 可用。

      【讨论】:

        【解决方案3】:

        doc.select("script[type=text/javascript]:not([src~=[a-zA-Z0-9./\s]+)");

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2012-10-01
          • 2016-06-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2014-05-31
          • 2014-02-03
          相关资源
          最近更新 更多