我有一个看起来像这样的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值。我怎么能这样做?
答案 0 :(得分:1)
您可以使用:
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不是其中之一。