【发布时间】:2019-08-26 17:32:00
【问题描述】:
我有 3000 个 Excel 文件。我想获取每个文件的标题并将其存储为 csv。但是,我遇到了解析错误:
'utf-8' codec can't decode byte 0xfa in position 1: invalid start byte
我已经看过这篇文章了。没有解决问题:UnicodeDecodeError: 'charmap' codec can't decode byte X in position Y: character maps to <undefined>
import glob
import pandas as pd
all_files = glob.glob("Converted Excels/*.xlsx")
file = all_files[0]
#Try 1
columns = []
with open(file, "r") as csv_file:
csv_reader = csv.reader(csv_file, delimiter=',')
for row in csv_reader:
columns.append([row])
break
#Try 2
df = pd.read_csv(file, header=0, nrows=1)
df
这是一个示例文件。 https://docs.google.com/spreadsheets/d/194QD14g_L0NQK6j3yO2Et2ZzycfQDzJXu7vdlr20owA/edit?usp=sharing
我将它从 PDF 转换为 Excel。但是在转换过程中,我指定了 encoding="utf8"。
如何从该文件中获取标题?
非常感谢您的帮助。
【问题讨论】:
-
df = pd.read_csv('2011 abril 1.csv - 2011 abril 1.csv')刚刚为我工作.. -
b'\x9d'.decode('cp437')给出¥- 所以你的文件可能在CP437,而不是UTF8,当你阅读它时你必须使用正确的endcoding。 -
@furas,对不起。我更新了正确的错误代码。
-
@Erfan,你能解释一下那个符号吗?
-
我也从链接下载文件,
read_csv('2011 abril 1.csv - 2011 abril 1.csv')也适用于我。 Linux Mint、Python 3.7、熊猫 0.24.1
标签: pandas csv export-to-csv reader