python 字符串轉json 出錯
問題描述
調用google翻譯英文,返回的字符串數據無法轉換為json。請問大神怎么取出數據。PS:只要中文。
str1 = ’’’[[['熊貓越來越熟悉互聯網的發展。','Panda is familiar by more and more people as the development of Internet.',,,3],['現在人們可以看到互聯網上的現場表演。','Now people can see the live show from the Internet.',,,3],['這些可愛的天使受到來自世界各地的粉絲的青睞。','These lovely angels are favored by the fans from all over the world.',,,3],['他們在日常生活中做什么讓人大聲笑起來。','What they do in the daily life makes people laugh out loudly.',,,3],['沒有人能夠抵擋這些天使的魅力。','No one can resist the charm from these angels.',,,3],['但是眾所周知,熊貓正在死亡,因為他們不容易生出新的嬰兒。','But it is known to all that panda is dying out, because it is not easy for them to get birth to the new babies.',,,3],['更重要的是,人們破壞了環境,使熊貓失去了家園。','What’s more, people damage the environment, which makes panda lose their home.',,,3],['我們可以做小事來保護他們。','We can do small things to protect them.',,,3],['當我們去動物園時,我們不應該扔掉垃圾,保持安靜,不要打擾這些可愛的生物。','When we go to the zoo, we should not throw away the rubbish and keep quiet, in the purpose of not to disturb these lovely creature.',,,3],['我們愛熊貓,我們有責任保護他們不要死亡。','We love panda, it is our duty to protect them from dying out.',,,3],[,,'Xióngmāo yuè lái yuè shúxī hùliánwǎng de fǎ zhǎn. Xiànzài rénmen kěyǐ kàn dào hùliánwǎng shàng de xiànchǎng biǎoyǎn. Zhèxiē kě’ài de tiānshǐ shòudào láizì shìjiè gèdì de fěnsī de qīnglài. Tāmen zài rìcháng shēnghuó zhōng zuò shénme ràng rén dàshēng xiào qǐlái. Méiyǒu rén nénggòu dǐdǎng zhèxiē tiānshǐ de mèilì. Dànshì zhòngsuǒzhōuzhī, xióngmāo zhèngzài sǐwáng, yīnwèi tāmen bù róngyì shēngchū xīn de yīng’ér. Gèng zhòngyào de shì, rénmen pòhuàile huánjìng, shǐ xióngmāo shīqùle jiāyuán. Wǒmen kěyǐ zuò xiǎoshì lái bǎohù tāmen. Dāng wǒmen qù dòngwùyuán shí, wǒmen bù yìng gāi rēng diào lèsè, bǎochí ānjìng, bùyào dǎrǎo zhèxiē kě’ài de shēngwù. Wǒmen ài xióngmāo, wǒmen yǒu zérèn bǎohù tāmen bùyào sǐwáng.']],,'en',,,[['Panda is familiar by more and more people as the development of Internet.',,[['熊貓越來越熟悉互聯網的發展。',0,true,false],['熊貓是越來越多的人隨著互聯網的發展熟悉。',0,true,false]],[[0,73]],'Panda is familiar by more and more people as the development of Internet.',0,0],['Now people can see the live show from the Internet.',,[['現在人們可以看到互聯網上的現場表演。',0,true,false],['現在,人們可以從網上看到的現場表演。',0,true,false]],[[0,51]],'Now people can see the live show from the Internet.',0,0],['These lovely angels are favored by the fans from all over the world.',,[['這些可愛的天使受到來自世界各地的粉絲的青睞。',0,true,false],['這些可愛的天使是由球迷從世界各地的青睞。',0,true,false]],[[0,68]],'These lovely angels are favored by the fans from all over the world.',0,0],['What they do in the daily life makes people laugh out loudly.',,[['他們在日常生活中做什么讓人大聲笑起來。',0,true,false],['他們在日常生活中做些什么讓人笑了一聲。',0,true,false]],[[0,61]],'What they do in the daily life makes people laugh out loudly.',0,0],['No one can resist the charm from these angels.',,[['沒有人能夠抵擋這些天使的魅力。',0,true,false],['沒有人能抵抗這些天使的魅力。',0,true,false]],[[0,46]],'No one can resist the charm from these angels.',0,0],['But it is known to all that panda is dying out, because it is not easy for them to get birth to the new babies.',,[['但是眾所周知,熊貓正在死亡,因為他們不容易生出新的嬰兒。',0,true,false],['但眾所周知,大熊貓正在消亡,因為它是不容易的,他們得到孕育了新的嬰兒。',0,true,false]],[[0,111]],'But it is known to all that panda is dying out, because it is not easy for them to get birth to the new babies.',0,0],['What’s more, people damage the environment, which makes panda lose their home.',,[['更重要的是,人們破壞了環境,使熊貓失去了家園。',0,true,false],['更重要的是,人們破壞環境,這使得熊貓失去了自己的家。',0,true,false]],[[0,78]],'What’s more, people damage the environment, which makes panda lose their home.',0,0],['We can do small things to protect them.',,[['我們可以做小事來保護他們。',0,true,false],['我們可以做的小東西來保護他們。',0,true,false]],[[0,39]],'We can do small things to protect them.',0,0],['When we go to the zoo, we should not throw away the rubbish and keep quiet, in the purpose of not to disturb these lovely creature.',,[['當我們去動物園時,我們不應該扔掉垃圾,保持安靜,不要打擾這些可愛的生物。',0,true,false],['當我們去動物園,我們不應該扔掉的垃圾,保持安靜,在不打擾這些可愛的動物的目的。',0,true,false]],[[0,131]],'When we go to the zoo, we should not throw away the rubbish and keep quiet, in the purpose of not to disturb these lovely creature.',0,0],['We love panda, it is our duty to protect them from dying out.',,[['我們愛熊貓,我們有責任保護他們不要死亡。',0,true,false],['我們愛熊貓,我們有責任保護他們免受滅絕。',0,true,false]],[[0,61]],'We love panda, it is our duty to protect them from dying out.',0,0]],0.99901491,,[['en'],,[0.99901491],['en']]]’’’
問題解答
回答1:>>> import re>>> import json>>> ss=re.sub(r’([[,])(?=,)’,r’1null’,str1)>>> j=json.loads(ss)>>> for l in j[0]: if l[0] is None : break print(l[0]) ##熊貓越來越熟悉互聯網的發展。##現在人們可以看到互聯網上的現場表演。##這些可愛的天使受到來自世界各地的粉絲的青睞。##他們在日常生活中做什么讓人大聲笑起來。##沒有人能夠抵擋這些天使的魅力。##但是眾所周知,熊貓正在死亡,因為他們不容易生出新的嬰兒。##更重要的是,人們破壞了環境,使熊貓失去了家園。##我們可以做小事來保護他們。##當我們去動物園時,我們不應該扔掉垃圾,保持安靜,不要打擾這些可愛的生物。##我們愛熊貓,我們有責任保護他們不要死亡。>>> for l in j[5]: if isinstance(l,list):print(l[2][1][0]) ##熊貓是越來越多的人隨著互聯網的發展熟悉。##現在,人們可以從網上看到的現場表演。##這些可愛的天使是由球迷從世界各地的青睞。##他們在日常生活中做些什么讓人笑了一聲。##沒有人能抵抗這些天使的魅力。##但眾所周知,大熊貓正在消亡,因為它是不容易的,他們得到孕育了新的嬰兒。##更重要的是,人們破壞環境,這使得熊貓失去了自己的家。##我們可以做的小東西來保護他們。##當我們去動物園,我們不應該扔掉的垃圾,保持安靜,在不打擾這些可愛的動物的目的。##我們愛熊貓,我們有責任保護他們免受滅絕。回答2:
這不是 JSON。
我解析過這鬼東西:
# vim:fileencoding=utf-8from pyparsing import ( empty, Word, Forward, Suppress, delimitedList, nums, Combine, Regex, ZeroOrMore, hexnums, CharsNotIn, Literal,)escape_map = { ’b’: ’b’, ’f’: ’f’, ’n’: ’n’, ’r’: ’r’, ’t’: ’t’,}def unescapeChar(c): if c in escape_map: return escape_map[c] else: return cescapedChar = ’’ + Regex(’.’)escapedChar.setParseAction(lambda toks: unescapeChar(toks[1]))unicodeChar = (r’u’ + Word(hexnums, exact=4)).setParseAction(lambda toks: chr(int(toks[1], 16)))jString = ’'’ + Combine(ZeroOrMore(unicodeChar | escapedChar | CharsNotIn(’'’))) + ’'’jString.setParseAction(lambda toks: toks[1])jNull = empty(’null’).setParseAction(lambda: [None])jTrue = Literal(’true’).setParseAction(lambda: [True])jFalse = Literal(’false’).setParseAction(lambda: [False])integer = Word(’-’+nums, nums).setParseAction(lambda toks: [int(toks[0])])jAtom = jString | integer | jTrue | jFalse | jNulljArray = Forward()jArray << Suppress(’[’) + delimitedList(jArray | jAtom) + Suppress(’]’)jArray.setParseAction(lambda toks: [[]] if len(toks) == 1 and toks[0] is None else [toks])if __name__ == ’__main__’: test = ’[true,false,,]’ out = jArray.parseString(test).asList()[0] print(out) test = ’[,'ja',[['沙',[4],false,false,1000,0,1,0],]]’ out = jArray.parseString(test).asList()[0] print(out) test = r’’’[[['鬼','ゴースト','Guǐ','Gō'suto']],,'ja',,[['鬼',[4],0,0,1000,-20, 1,0]],[['ゴースト',4,[['鬼',1000,0,0],['幽靈',0,0,0],['鬼魂',0,0,0],['幽魂', 0,0,0],['靈魂',0,0,0]],[[0,4]],'ゴースト']],,,[['ja']],1] ’’’ out = jArray.parseString(test).asList()[0] print(out) out = jArray.parseString(’[]’).asList()[0] print(out) out = jArray.parseString(’[1,2,,4,[],]’).asList()[0] print(out) out = jArray.parseString(’[[,]]’).asList()[0] print(out) out = jString.parseString(r’'this is a u003e test't, hehe'’)[0] print(out)回答3:
你的json串里莫名其妙怎么這么多逗號,連續的逗號導致json解析失敗
回答4:import reres = re.findall(r'([u4E00-u9FA5]+)',str1)print(res)
相關文章:
1. docker鏡像push報錯2. javascript - 如何獲取未來元素的父元素在頁面中所有相同元素中是第幾個?3. 關于docker下的nginx壓力測試4. linux運維 - python遠程控制windows如何實現5. node.js - node express 中ajax post請求參數接收不到?6. java - tomcat服務經常晚上會掛,求解?7. python - django models 為生成的html元素添加樣式。8. java - 原生CGLib內部方法互相調用時可以代理,但基于CGLib的Spring AOP卻代理失效,為什么?9. html5 - 怎么用npm下載react3版本的路由呢。10. javascript - js判斷一個數組是否重復
