JSoup来解析<script>标记</script>

时间:2012-01-24 20:49:48

标签: java javascript parsing jsoup

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

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

如何使用JSoup解析此脚本标记并获取值“1131452100000”,该值存在于脚本的最后一行中(这只是一个参数)。任何投入都表示赞赏。

3 个答案:

答案 0 :(得分:4)

我担心您无法使用javascript解析Jsoup来提取您的数据。基本上Jsoup是一个HTML pasrser,HTML和javascript是完全不同的东西。你甚至可以看到javascript中没有jsoup可以理解的HTML标签。

您可以将<script></script>标记之间的所有内容加载到字符串中,而不是使用regex来获取所需内容。

这是一个不错的Regex Java Tutorial

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

答案 1 :(得分:1)

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

答案 2 :(得分:0)

doc.select( “脚本[类型=文本/ JavaScript的]:不使用(SRC〜= [A-ZA-Z0-9 ./ \ S] +)”);