json 形式に変換する必要がある (おそらく不正な形式の) 文字列があります。取得した文字列を印刷する
{"composemsg":{"return":null,"report":"<p class=\"error j-table-ui-report-entry\">07:39:28 - Action failed<br\/>Error adding row 0<br\/> Message <span class=\"label\">\"Test Message\"<\/span>, Receivers 'Array\n(\n [0] => gaga7\n)\n'<br\/><\/p>",0:""}}
追加: そもそもこの文字列を変更する方法も、この文字列を生成するコードを変更する方法もありません。私が持っているのは、上で引用した文字列だけです!
を使用して文字列(変数「j」に含まれる)を変換しようとすると、
json.loads(j)
エラーが発生します:
ValueError: Expecting property name: line 1 column 250 (char 250)
ただし、コマンド ラインで python を起動し、出力された文字列に変数をアサートする (「null」を「None」に置き換える) と、正常に動作します。
In [40]: x = {"composemsg":{"return":None,"report":"<p class=\"error j-table-ui-report-entry\">07:39:28 - Action failed<br\/>Error adding row 0<br\/> Message <span class=\"label\">\"Test Message\"<\/span>, Receivers 'Array\n(\n [0] => gaga7\n)\n'<br\/><\/p>",0:""}}
In [41]: x
Out[41]:
{'composemsg': {0: '','report': '<p class="error j-table-ui-report-entry">07:39:28 - Action failed<br\\/>Error adding row 0<br\\/> Message <span class="label">"Test Message<\\/span>, Receivers \'Array\n(\n [0] => gaga7\n)\n\'<br\\/><\\/p>', 'return': None}}
この動作のアイデアはありますか? 元の文字列に不正な場所はありますか? 問題はありません。