盤點CSV文件在Excel中打開后亂碼問題的兩種處理方法
大家好,我是Python進階者。前幾天給大家分享了一些亂碼問題的文章,閱讀量還不錯,感興趣的小伙伴可以前往:盤點3種Python網(wǎng)絡(luò)爬蟲過程中的中文亂碼的處理方法,UnicodeEncodeError: 'gbk' codec can't encode character解決方法,今天基于粉絲提問,給大家介紹CSV文件在Excel中打開后亂碼問題的兩種處理方法,希望對大家的學習有所幫助。
前言
前幾天有個叫【RSL】的粉絲在Python交流群里問了一道關(guān)于CSV文件在Excel中打開后亂碼的問題,如下圖所示。
在Excel中直接打開csv文件,如下圖所示:
群中提問:
看上去確實頭大,對于爬蟲初學者來說,這個亂碼擺在自己面前,猶如攔路虎一般難頂。不過別慌,小編在這里給大家整理了兩種方法,專門用于針對CSV文件亂碼的,希望大家在后面再次遇到這樣亂碼的問題,在此處可以得到靈感!
一、思路
其實解決問題的關(guān)鍵點就是在于一點,就是編碼的轉(zhuǎn)換。這里例舉兩種方法,肯定還有其他的方法的,也歡迎大家在評論區(qū)諫言。
二、解決方案
方法一:notepad++打開 因為csv文件本質(zhì)上也是文本文件,本身用notepad++打開csv文件是可以直接打開,不會亂碼的。如果在網(wǎng)絡(luò)爬蟲的時候,指定了存儲格式為utf-8編碼,那么該csv文件用notepad++打開是沒啥問題的。
- f = open('filename.csv', mode='a', encoding="utf-8")
- csvwriter = csv.writer(f)
如下圖所示:
因為我源文件本身就是韓語和日本語,所以看到的就是這個了,上圖絕不是亂碼哈,別誤導了大家,嘻嘻!
方法二:Excel轉(zhuǎn)換 這個方法稍微復雜一些,但是比較好理解,對于初學者來說,還是比較好接受的,直接在Excel中進行操作,步驟如下。
1)打開一個Excel文件,之后依次點擊“數(shù)據(jù)”-->“從文本/CSV”,如下圖所示。
2)之后選擇需要加載的CSV文件,然后會自動彈出下圖
從這里看的是原始文件,確實是亂碼的存在,接下來需要稍微設(shè)置下就可以了。
3)文件原始格式設(shè)置為“無”或者你的原始編碼“UTF-8”;分隔符默認是逗號;數(shù)據(jù)類型檢測選擇基于整個數(shù)據(jù)集,最后選擇右下方的加載,如下圖所示。
4)之后稍等片刻,CSV文件就會自動加載到Excel,如下圖所示。
因為我源文件本身就是韓語和日本語,所以看到的就是這個了。
5)在Excel中的顯示,如下圖所示:
看上去還是比較清爽的,如此一來,中文亂碼的問題就迎刃而解了。之后你就可以進行進一步的轉(zhuǎn)存為標準的Excel文件或者進行數(shù)據(jù)處理都可以。
三、總結(jié)
我是Python進階者。本文基于粉絲提問,針對CSV文件在Excel中打開后亂碼問題,給出了兩種亂碼解決方法,順利幫助粉絲解決了問題。