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

点击上方“Python爬虫与数据挖掘”,进行关注

回复“书籍”即可获赠Python从入门到进阶共10本电子书

千载琵琶作胡语,分明怨恨曲中论。

    大家好,我是Python进阶者。前几天给大家分享了一些乱码问题的文章,阅读量还不错,感兴趣的小伙伴可以前往:盘点3种Python网络爬虫过程中的中文乱码的处理方法UnicodeEncodeError: 'gbk' codec can't encode character解决方法

前言

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

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

7f5dd1e10ebf8a23363046b26ad2649b.png

    群中提问:

434b7026f2e8178de691c5f8b3277ac4.png

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

一、思路

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

二、解决方案

方法一:notepad++打开

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

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

    如下图所示:

325f0b4832a963ede1459c6760185bab.png

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

方法二:Excel转换

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

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

6c67cbf5a3372c4fefbdf460041a0ebe.png

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

f94175f483a3f794816fca82fff3b6f5.png

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

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

ee706c092bd5342f23aad8a5f0349243.png

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

dff86180dfe8efcaa16b2378f5785292.png

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

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

de98358c2cd69fe47b7e20db14aac2e6.png

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

三、总结

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

2b86389cf0319ebd986351316aa6e4e1.png

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

a4998d05f2a4e1d468c7bc47e3dfa86a.png

------------------- End -------------------

往期精彩文章推荐:

77308af0093874b3c263477839b2badb.png

欢迎大家点赞,留言,转发,转载,感谢大家的相伴与支持

想加入Python学习群请在后台回复【入群

万水千山总是情,点个【在看】行不行

/今日留言主题/

随便说一两句吧~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值