CSV 文件读取问题

问题描述 投票:0回答:1

大家!

我正在解决 CSV 文件难题。这是文件的链接:文件链接,全部为西班牙语。

然而,当尝试用Python解析它时,我遇到了一系列令人沮丧的错误:

ParserError: Error tokenizing data. C error: Expected 1 fields in line 902135, saw 2
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xcd in position 125: invalid continuation byte
ParserError: Error tokenizing data. C error: Expected 14 fields in line 1145, saw 15

我尝试过使用 utf-8、latin-1 和 ISO 进行解码,但没有成功。我什至无法在不遇到问题的情况下查看 CSV 内容,并且由于文件太大,Excel 举起了手。

我尝试使用以下代码片段来侦查编码:

def detect_encoding(content):
    result = chardet.detect(content)
    return result['encoding']

然而,Python 保持沉默,没有提供任何线索。

有人愿意伸出援手吗?

提前非常感谢!

python pandas csv spyder chardet
1个回答
0
投票

如果所有内容都准确解码并不重要,您可以在 pandas read_csv 中设置 encoidng_errors="backslashreplace"。这应该会导致它用十六进制值替换坏字符,而不是在遇到它们时崩溃。从那里,如果您发现编码错误很普遍,您可以查看导致错误的特定字符(或者应该是字符的字节序列),并使用它来帮助您发现文件的正确编码。

© www.soinside.com 2019 - 2024. All rights reserved.