盘点CSV文件在Excel中打开后乱码问题的两种处理方法

大家好,我是Python进阶者。前几天给大家分享了一些乱码问题的文章,阅读量还不错,感兴趣的小伙伴可以前往:盘点3种Python网络爬虫过程中的中文乱码的处理方法,UnicodeEncodeError: ‘gbk’ codec can’t encode character解决方法,今天基于粉丝提问,给大家介绍CSV文件在Excel中打开后乱码问题的两种处理方法,希望对大家的学习有所帮助。

前言

前几天有个叫【RSL】的粉丝在Python交流群里问了一道关于CSV文件在Excel中打开后乱码的问题,如下图所示。

在Excel中直接打开csv文件,如下图所示:

群中提问:

看上去确实头大,对于爬虫初学者来说,这个乱码摆在自己面前,犹如拦路虎一般难顶。不过别慌,小编在这里给大家整理了两种方法,专门用于针对CSV文件乱码的,希望大家在后面再次遇到这样乱码的问题,在此处可以得到灵感!

一、思路

其实解决问题的关键点就是在于一点,就是编码的转换。这里例举两种方法,肯定还有其他的方法的,也欢迎大家在评论区谏言。

二、解决方案

方法一:notepad++打开

因为csv文件本质上也是文本文件,本身用notepad++打开csv文件是可以直接打开,不会乱码的。如果在网络爬虫的时候,指定了存储格式为utf-8编码,那么该csv文件用notepad++打开是没啥问题的。

f = open('filename.csv', mode='a', encoding="utf-8")
csvwriter = csv.writer(f)

如下图所示:

因为我源文件本身就是韩语和日本语,所以看到的就是这个了,上图绝不是乱码哈,别误导了大家,嘻嘻!

方法二:Excel转换

这个方法稍微复杂一些,但是比较好理解,对于初学者来说,还是比较好接受的,直接在Excel中进行操作,步骤如下。

1)打开一个Excel文件,之后依次点击“数据”–>“从文本/CSV”,如下图所示。

2)之后选择需要加载的CSV文件,然后会自动弹出下图

从这里看的是原始文件,确实是乱码的存在,接下来需要稍微设置下就可以了。

3)文件原始格式设置为“无”或者你的原始编码“UTF-8”;分隔符默认是逗号;数据类型检测选择基于整个数据集,最后选择右下方的加载,如下图所示。

4)之后稍等片刻,CSV文件就会自动加载到Excel,如下图所示。

因为我源文件本身就是韩语和日本语,所以看到的就是这个了。

5)在Excel中的显示,如下图所示:

看上去还是比较清爽的,如此一来,中文乱码的问题就迎刃而解了。之后你就可以进行进一步的转存为标准的Excel文件或者进行数据处理都可以。

三、总结

我是Python进阶者。本文基于粉丝提问,针对CSV文件在Excel中打开后乱码问题,给出了两种乱码解决方法,顺利帮助粉丝解决了问题。虽然文中例举了两种方法,但是小编相信肯定还有其他的方法的,也欢迎大家在评论区谏言。

小伙伴们,快快用实践一下吧!如果在学习过程中,有遇到任何问题,欢迎加我好友,我拉你进Python学习交流群共同探讨学习。