存在与反序列化包含嵌入引号的JSON相关的多个问题,但没有看到针对python的解决方案:
给出仅部分有效的JSON日志数据,例如:
"{"link":"<a href="mylink">http://my.com</a>"}"
例如,“ mylink”周围的内引号会干扰各个键值对周围的外引号。
未被转义,它们导致json.loads
和ast.literal_eval
(请参阅here)引发语法错误。
另一方面,由于变量嵌套的JSON结构(上面只是一个最小的示例),并且键值是开放式的,没有可用的模式,因此通过正则表达式来搜寻和转义内部引号是棘手的。
还有其他选择吗?