Преобразование строковых объектов JSON в JSONPython

Программы на Python
Ответить
Anonymous
 Преобразование строковых объектов JSON в JSON

Сообщение Anonymous »

Я использую MariaDB, и, к сожалению, объекты JSON возвращаются в виде строк. Я хочу преобразовать эти строковые объекты JSON обратно в JSON, но проблема в том, что я хочу сделать это только в том случае, если они на самом деле являются объектами JSON, и игнорировать все поля, которые, например, являются обычными строками (но могу< /strong> преобразовать в JSON без возникновения ошибки).
Мой подход заключается в проверке, содержит ли строка двойные кавычки, но это кажется слишком наивным, потому что он также преобразует строку, которая естественным образом содержит двойную кавычку, но не предназначена для использования в качестве объекта JSON. Есть ли более надежный способ добиться этого?

Код: Выделить всё

import json
results = {"not_string": 1234,
"not_json": "1234",
"json": '[{"json": "1234"}]',
"false_positive": '["actually a quote in brackets"]'}

# load the json fields in the results
for key, value in results.items():
if isinstance(value, str) and '"' in value:
try:
results[key] = json.loads(value)
except Exception as e:
pass
for key, value in results.items():
print(type(value))

Код: Выделить всё



  

Подробнее здесь: [url]https://stackoverflow.com/questions/75811600/convert-stringified-json-objects-to-json[/url]
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»