32 位 WINDOWS7,PYTHON3 环境下。用这样的命令将爬到的结果输出到 CSV 文件: scrapy crawl 爬虫名 -o result.csv
这个文件用 EDITPLUS 或写字板打开都能正常显示其中的汉字,但是直接双击 CSV 文件用 EXCEL 打开时其中的汉字却都是乱码,请问这个要如何解决呢?感谢指点!
     1 
                    
                    blindpirate      2017-09-07 22:49:08 +08:00 via iPhone 
                    
                    Bom 
                 | 
            
     2 
                    
                    gooin      2017-09-07 22:50:37 +08:00 via Android 
                    
                    编码格式改为 utf-8? 
                 | 
            
     3 
                    
                    ho121      2017-09-07 22:54:17 +08:00 via Android 
                    
                    utf8-bom 
                 | 
            
     4 
                    
                    expkzb      2017-09-07 23:09:45 +08:00 
                    
                    文件转 gbk 编码就好了应该 
                 | 
            
     7 
                    
                    imn1      2017-09-07 23:52:58 +08:00 
                    
                    excel 用导入,高级,然后选 utf-8 
                 | 
            
     8 
                    
                    dd99iii      2017-09-07 23:58:33 +08:00 
                    
                    utf-8-sig 
                 | 
            
     9 
                    
                    togodo      2017-09-08 00:02:16 +08:00 
                    
                    文件格式选系统默认 
                 | 
            
     12 
                    
                    rabbbit      2017-09-08 00:16:26 +08:00 
                    
                    用记事本打开,另存为 utf-8 格式 
                 | 
            
     13 
                    
                    thundernet8      2017-09-08 00:36:02 +08:00 via iPhone 
                    
                    excel 打开 csv 默认 ansi 编码 所以你只能通过 excel 重新导入逗号分隔文本 然后生成 xls 
                 | 
            
     14 
                    
                    wisefree      2017-09-08 00:51:50 +08:00 
                    
                    这是 excel 的问题,百度:excel 导入 csv 文件 
                 | 
            
     16 
                    
                    KgM4gLtF0shViDH3      2017-09-08 09:13:43 +08:00 
                    
                    用 Python2 爬 HTML 页面或者爬到数据库然后导出到 csv 还没遇到过这种问题呢。我都是先 sys.setdefaultencoding('utf-8') 
                 | 
            
     17 
                    
                    kaiser1992      2017-09-08 11:22:51 +08:00 
                    
                    微软的软件打开文件默认都是 ANSI 编码(国内就是 GBK),UTF-8 的 csv 文件在 execl 中打开时解码自然就乱码了,在 WINDOWS 中识别 UTF-8 需要在前面添加 BOM(16 进制的:EF BB BF ),或者选择导入的方式(里面可以选择编码)。 
                 | 
            
     18 
                    
                    davidqw      2017-09-08 14:23:47 +08:00 
                    
                    excel 新建表单导入 csv,编码选择 UTF-8,直接双击不行 
                 | 
            
     19 
                    
                    runningman      2017-09-08 15:03:42 +08:00 
                    
                    utf-8 without boom 
                 | 
            
     23 
                    
                    Heron      2017-09-11 00:27:05 +08:00 
                    
                    貌似简单的方法就是记事本打开以后,在另存成 utf-8 就可以。 
                 | 
            
     24 
                    
                    goofool      2017-09-11 14:58:13 +08:00 
                    
                    excel 会根据有没有 BOM 确定文件是不是 UTF8 编码,否则它假设内容使用 windows codepage 编码。 
                这种情况只需要重新保存文本为 utf-8 with bom 就没有乱码了。  |