Json格式的HTML无法解析

时间:2015-11-23 07:53:27

标签: java json jackson

我正在使用Twitter API,并希望解析来自user_timeline GET调用的json响应。 您可以找到此类通话的示例here

为此,我正在使用杰克逊:

URL url =  new File("D:\\01_perso\\like-minded-friends\\test\\resources\\\\tweet_sample.json").toURI().toURL();
ObjectMapper om = new ObjectMapper();
//om.configure(JsonParser.Feature.ALLOW_COMMENTS, true);
JsonNode node = om.readTree(url);
System.out.print(node.path("id").asLong());

问题是解析失败并出现以下错误:

com.fasterxml.jackson.core.JsonParseException: Unexpected character ('/' (code 47)): maybe a (non-standard) comment? (not recognized as one since Feature 'ALLOW_COMMENTS' not enabled for parser)
 at [Source: file:/D:/01_perso/like-minded-friends/test/resources/tweet_sample.json; line: 98, column: 26]

错误来自于JSON包含一些HTML href,并且它们包含斜杠。

"source": "<a href="//sites.google.com/site/yorufukurou/\"" rel="\"nofollow\"">YoruFukurou</a>",

我正在寻找让杰克逊忽略这些角色的方法。

正如您在上面所看到的,我尝试使用 ALLOW_COMMENTS 功能,但它不起作用,因为html随后被视为注释,并最终吃掉最后一个逗号json,导致另一个错误。

有没有办法告诉杰克逊只是接受那些HTML行,或者至少忽略它们? (我实际上并不需要它们,因此可以简单地跳过源元素。)

由于

0 个答案:

没有答案