python转义特殊字符

时间:2016-11-29 12:17:39

标签: python json

我正在研究python项目,我应该从Kafka中使用JSON对象。

JSON中的某些字段包含双引号,\ n,\ r ...

当我尝试将JSON转换为dict时,它失败,因为它不是有效的JSON。

以下是我正在使用的JSON示例

{
  "id": "tag:search.twitter.com,2005:803149832814731264",
  "body": "RT @pnu_nourah: #دعوة من نادي قادة الصحة بكلية الصحة وعلوم التأهيل لحضور "الحملة التوعوية لسرطان الرئة " \n#جامعة_الأميرة_نورة\n#pnu "
}

转义\ n和\ r是很简单但双引号会导致问题,因为字段名称和值也用双引号括起来。

我怎样才能在不影响其他引号的情况下转义字段值中的双引号。

我正在使用json库json.loads(line)将json转换为dict。

我使用正则表达式如r'\“body \”:\“'但问题可能出现在其他字段而不仅仅是正文中。

1 个答案:

答案 0 :(得分:1)

在键和值周围使用单引号(而不是双引号;)。