1. 程式人生 > >python中json報錯:json.decoder.JSONDecodeError: Invalid control character at: line 2 column 18 (char 19)

python中json報錯:json.decoder.JSONDecodeError: Invalid control character at: line 2 column 18 (char 19)

一、json.loads(json_data) 報錯json.decoder.JSONDecodeError: Invalid control character at: line 2 column 18 (char 19)

  •  原因:json預設使用的是嚴謹格式,當跨語言傳遞資料時,就容易報出這個錯誤。
  • 解決方法:加上引數 strict
json.loads(json_data, strict=False)

二、json.dumps(data) 將漢字轉為unicode編碼

  • 原因:json預設會進行字元轉換
  • 解決方法: 新增 ensure_ascii 引數
json.dumps(data, ensure_ascii=False)

 三、json.loads(json_data) 報錯:json.decoder.JSONDecodeError: Invalid \escape: line 1 column 89 (char 88)

  • 錯誤原因:語法錯誤
  • 解決辦法

  檢查json_data 資料,是否包含非法字元,如反斜線‘\’, 將‘\’ 換為‘\\’