最近一直在研究python+selenium+beautifulsoup的爬蟲(chóng),但是存入數(shù)據(jù)庫(kù)還有寫(xiě)入txt文件里面的時(shí)候一直都是unicode編碼的格式。
接下來(lái)就是各種翻閱文檔,查找谷歌和度娘,但是都沒(méi)有具體的說(shuō)明是什么問(wèn)題。
結(jié)果根據(jù)自己的代碼發(fā)現(xiàn),原來(lái)是一句代碼寫(xiě)到后面去了。
1
2
3
4
5
|
name = json.dumps('中國(guó)你好', ensure_ascii=False) #重點(diǎn)就是這一句代碼 date = time.strftime('%Y-%m-%d', time.localtime(time.time())) #此處是時(shí)間轉(zhuǎn)換 f = codecs.open(date + '.txt', 'a', 'utf-8') f.write('%s\n\n' % name) f.close() |
分析 json.dumps('中國(guó)你好')
'中國(guó)你好' 是ascii 字符碼,而不是真正的中文。
這是因?yàn)閖son.dumps 序列化時(shí)對(duì)中文默認(rèn)使用的ascii編碼
想輸出真正的中文需要指定ensure_ascii=False
json.dumps中可以放置json字符串,但是也必須指定ensure_ascii=False
json.dumps : dict轉(zhuǎn)成str
以上這篇淺談python中對(duì)于json寫(xiě)入txt文件的編碼問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持服務(wù)器之家。
原文鏈接:https://blog.csdn.net/u011615787/article/details/73089523