Java 使用jsoup(JSON数据)解析脚本

Java 使用jsoup(JSON数据)解析脚本,java,android,html,parsing,jsoup,Java,Android,Html,Parsing,Jsoup,我有一个HTML代码,看起来像这样 <div> <script id='jsonData' type="text/x-jquery-tmpl"> [{"legs":"departureAirport":{"airportID":4934980,"airportCity":"Bangkok","airportCode":"DMK","airportName":"Bangkok (DMK)","airportCityState":"Bangkok"}}]

我有一个HTML代码,看起来像这样

<div>
   <script id='jsonData' type="text/x-jquery-tmpl">
      [{"legs":"departureAirport":{"airportID":4934980,"airportCity":"Bangkok","airportCode":"DMK","airportName":"Bangkok (DMK)","airportCityState":"Bangkok"}}]
   </script>

[{“legs”:“出发机场”:{“airportID”:4934980,“airportCity”:“曼谷”,“airportCode”:“DMK”,“airportName”:“曼谷(DMK)”,“airportCityState”:“曼谷”}]
我想使用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();
String htmlStr=“[{\'legs\':\'departureAirport\':{\'airportID\':4934980,\'airportCity\':\'曼谷\',\'airportCode\':\'DMK\,\'airportName\':'曼谷(DMK)\,'airportCityState\:'曼谷\'}]
+ "";
Document doc=Jsoup.parse(htmlStr);
元素el=doc.getElementById(“jsonData”);
字符串jsonStr=el.html();
基本上,您可以从脚本节点获得原始的内部html。注意,您可能仍然需要解析JSON数据。有几个库可以做到这一点,但JSoup不是其中之一