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 就没有乱码了。 |