HtmlUnit で UnexpectedPage として返されるページがあり、応答は JSON です。これを解析するために HTMLUnit を使用できますか、それとも追加のライブラリが必要ですか?
質問する
10184 次
2 に答える
21
HtmlUnit はサポートしていません。せいぜい JS 関数を実行できます。Content-Type
返された応答が一致するかどうかを事前に確認しapplication/json
、適切なツールを使用して解析する必要があります。これにはGoogle Gsonが役立ちます。
WebClient client = new WebClient();
Page page = client.getPage("https://stackoverflow.com/users/flair/97901.json");
WebResponse response = page.getWebResponse();
if (response.getContentType().equals("application/json")) {
String json = response.getContentAsString();
Map<String, String> map = new Gson().fromJson(json, new TypeToken<Map<String, String>>() {}.getType());
System.out.println(map.get("displayName")); // Benju
}
JSON 構造が事前にわかっている場合は、Gson を使用して完全な Javabean に変換することもできます。この回答で例を見つけることができます。
于 2010-05-28T23:31:54.320 に答える