第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

Facebook JSON編碼錯(cuò)誤

Facebook JSON編碼錯(cuò)誤

人到中年有點(diǎn)甜 2019-12-04 14:50:57
我下載了我的Facebook Messenger數(shù)據(jù)(在您的Facebook帳戶(hù)中,轉(zhuǎn)到設(shè)置,然后轉(zhuǎn)到您的Facebook信息,然后下載您的信息,然后創(chuàng)建一個(gè)至少選中了“ 消息”框的文件)以進(jìn)行一些統(tǒng)計(jì)但是,編碼存在一個(gè)小問(wèn)題。我不確定,但是Facebook似乎對(duì)此數(shù)據(jù)使用了錯(cuò)誤的編碼。當(dāng)我使用文本編輯器打開(kāi)它時(shí),我看到的是這樣的:Rados\u00c5\u0082aw。當(dāng)我嘗試使用python(UTF-8)打開(kāi)它時(shí),得到了Rados?\x82aw。但是我應(yīng)該得到:Rados?aw。我的python腳本:text = open(os.path.join(subdir, file), encoding='utf-8')conversations.append(json.load(text))我嘗試了幾種最常見(jiàn)的編碼。示例數(shù)據(jù)是:{  "sender_name": "Rados\u00c5\u0082aw",  "timestamp": 1524558089,  "content": "No to trzeba ostatnie treningi zrobi\u00c4\u0087 xD",  "type": "Generic"}
查看完整描述

3 回答

?
鳳凰求蠱

TA貢獻(xiàn)1825條經(jīng)驗(yàn) 獲得超4個(gè)贊

我解析對(duì)象的解決方案parse_hook在load / loads函數(shù)中使用回調(diào):


import json



def parse_obj(dct):

    for key in dct:

        dct[key] = dct[key].encode('latin_1').decode('utf-8')

        pass

    return dct



data = '{"msg": "Ahoj sv\u00c4\u009bte"}'


# String

json.loads(data)  

# Out: {'msg': 'Ahoj sv?\x9bte'}

json.loads(data, object_hook=parse_obj)  

# Out: {'msg': 'Ahoj světe'}


# File

with open('/path/to/file.json') as f:

     json.load(f, object_hook=parse_obj)

     # Out: {'msg': 'Ahoj světe'}

     pass

更新:


用字符串解析列表的解決方案不起作用。因此,這里是更新的解決方案:


import json



def parse_obj(obj):

    for key in obj:

        if isinstance(obj[key], str):

            obj[key] = obj[key].encode('latin_1').decode('utf-8')

        elif isinstance(obj[key], list):

            obj[key] = list(map(lambda x: x if type(x) != str else x.encode('latin_1').decode('utf-8'), obj[key]))

        pass

    return obj


查看完整回答
反對(duì) 回復(fù) 2019-12-04
  • 3 回答
  • 0 關(guān)注
  • 479 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)