我有一个如下所示的 HTML 代码。
<div>
<script id='jsonData' type="text/x-jquery-tmpl">
[{"legs":"departureAirport":{"airportID":4934980,"airportCity":"Bangkok","airportCode":"DMK","airportName":"Bangkok (DMK)","airportCityState":"Bangkok"}}]
</script>
我想使用 JSoup 解析此 HTML 并获取此 html 中的 JSON 值。我怎样才能做到这一点?
最佳答案
你可以使用这个:
String htmlStr = "<div><script id='jsonData' type=\"text/x-jquery-tmpl\">[{\"legs\":\"departureAirport\":{\"airportID\":4934980,\"airportCity\":\"Bangkok\",\"airportCode\":\"DMK\",\"airportName\":\"Bangkok (DMK)\",\"airportCityState\":\"Bangkok\"}}]"
+ "</script></div>";
Document doc = Jsoup.parse(htmlStr);
Element el = doc.getElementById("jsonData");
String jsonStr = el.html();
基本上,您可以从脚本节点获取原始的内部 html。请注意,您可能仍然需要解析 JSON 数据。有几个可用的库可以做到这一点,但 JSoup 不是其中之一。
关于java - 使用 jsoup 解析脚本(JSON 数据),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22752633/