Python實(shí)現(xiàn)把json格式轉(zhuǎn)換成文本或sql文件
python如何將json格式的數(shù)據(jù)快速的轉(zhuǎn)化成指定格式的數(shù)據(jù)呢?或者轉(zhuǎn)換成sql文件?
下面的例子是將json格式的數(shù)據(jù)準(zhǔn)換成以#_#分割的文本數(shù)據(jù),也可用于生成sql文件。
[root@bogon tutorial]# vi json2txt.py #-*- coding: UTF-8 -*- import json data = [] with open('./tencent_test.json') as f: for line in f: data.append(json.loads(line)) #print json.dumps(data, ensure_ascii=False) import codecs file_object = codecs.open('tencent.txt', 'w' ,"utf-8") str = "\r\n" splitstr = "#_#" for item in data: #print json.dumps(item) #str = str + "insert into tencent(name,catalog,workLocation,recruitNumber,detailLink,publishTime) values " #str = str + "'%s','%s','%s','%s','%s'\r\n" % (item['parentTitle'],item['parentLink'],item['author'],item['link'],item['title']) #print json.loads(item['author']) + "\r\n" str = "%s#_#%s#_#%s#_#%s#_#%s\r\n" % (item['parentTitle'],item['parentLink'],item['author'],item['link'],item['title'].strip()) file_object.write(str) #import codecs #file_object = codecs.open('tencent.txt', 'w' ,"utf-8") #file_object.write(str) file_object.close() print "success"
注:如果數(shù)據(jù)量過(guò)大不宜全部放在str里一次性寫(xiě)入文件??梢钥紤]逐行寫(xiě)入,或者到達(dá)一定程度時(shí)批量寫(xiě)入。
另外:python通過(guò)strip(rm)替換字符串,當(dāng)rm為空時(shí),默認(rèn)刪除空白符(包括'\n', '\r', '\t', ' ')。
測(cè)試:
json格式的數(shù)據(jù)
[root@bogon tutorial]# vi tencent_test.json {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"} {"author": "作者", "parentTitle": "父標(biāo)題", "title": "標(biāo)題", "pageUrl": "pageurl", "link": "linkurl", "parentLink": "parenturl"}
運(yùn)行python json2txt.py
[root@bogon tutorial]# python json2txt.py success [root@bogon tutorial]# more tencent.txt 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題 父標(biāo)題#_#parenturl#_#作者#_#linkurl#_#標(biāo)題
相關(guān)文章
django使用定時(shí)任務(wù)django_apscheduler的實(shí)現(xiàn)
定時(shí)任務(wù)無(wú)論是個(gè)人開(kāi)發(fā)還是企業(yè)業(yè)務(wù)都是需要的,本文主要介紹了django使用定時(shí)任務(wù)django_apscheduler的實(shí)現(xiàn),減少請(qǐng)求時(shí)需要用戶(hù)等待的時(shí)間,感興趣的可以了解一下2021-08-08python去除列表中的空值元素實(shí)戰(zhàn)技巧
這篇文章主要介紹了python實(shí)戰(zhàn)技巧之去除列表中的空值元素,搜集針對(duì)python高效處理數(shù)據(jù)的核心代碼,今天是實(shí)現(xiàn)去除列表中的空值元素,需要的朋友可以參考下2023-02-02Selenium使用Chrome模擬手機(jī)瀏覽器方法解析
這篇文章主要介紹了Selenium使用Chrome模擬手機(jī)瀏覽器方法解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04jenkins+python自動(dòng)化測(cè)試持續(xù)集成教程
這篇文章主要介紹了jenkins+python自動(dòng)化測(cè)試持續(xù)集成教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05pytorch的Backward過(guò)程用時(shí)太長(zhǎng)問(wèn)題及解決
這篇文章主要介紹了pytorch的Backward過(guò)程用時(shí)太長(zhǎng)問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02Python如何使用Eel和HTML開(kāi)發(fā)桌面應(yīng)用
這篇文章主要介紹了Python使用Eel和HTML開(kāi)發(fā)桌面應(yīng)用問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01python中scrapy處理項(xiàng)目數(shù)據(jù)的實(shí)例分析
在本篇文章里小編給大家整理了關(guān)于python中scrapy處理項(xiàng)目數(shù)據(jù)的實(shí)例分析內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。2020-11-11