У меня есть простой скрипт python, как показано ниже.кодирование при извлечении данных из файла JSON
with open(fname, 'r+') as f:
json_data = json.load(f)
message = json_data['Info']
for line in message.split('<br>'):
if(len(line) < 25):
print(line)
if ':' in line:
k,v = line.strip().split(':')
print(k,v)
Я получаю K, V в следующем формате
(u'Images', u' 23')
(u'Links', u' 225')
message
выход выглядит, как показано ниже.
Title: Worlds best websit | mywebsite.com
Links: 225
Images: 23
Browser: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 Ubuntu Chromium/41.0.2272.76 Chrome/41.0.2272.76 Safari/537.36
CPUs: 8
Я хочу, чтобы извлечь данные Images:23
и Links:225
и обновления, которые к тому же JSon файл f
в сценарии.
Если бы я сделать
json_data[k] = v
json.dump(json_data,f)
это развращает JSON file.Meaning Если добавить вышеуказанные две строки в моем коде. и сделать
cat output.json | python -m json.tool
из команды line.I получить следующее сообщение об ошибке.
Extra data: line 2 column 1 - line 2 column 45376 (char 2139 - 47514)
Я не понимая, что такое «у» на выходе? Это какая-то кодировка? Если да, то как это сделать?
U '' notates Юникода объект строки в Python 2. –
я вижу. Как извлечь данные и добавить их обратно в файл? – liv2hak
Что значит «это развращает json»? Вы закрываете и повторно открываете файл между тем, когда вы вызываете 'load' и' dump'? – jedwards