У меня 3000 файлов Excel.Я хочу получить заголовки каждого файла и сохранить его как CSV.Тем не менее, я сталкиваюсь с ошибкой синтаксического анализа:
'utf-8' codec can't decode byte 0xfa in position 1: invalid start byte
Я уже видел этот пост.Это не решает проблему: UnicodeDecodeError: кодек 'charmap' не может декодировать байт X в позиции Y: символ отображается на
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
Я преобразовал это в Excel из PDF.Но во время преобразования я указал encoding = "utf8".
Как мне получить заголовок из этого файла?
Большое спасибо за вашу помощь.
.xlsx не является файлом CSV.Вы не можете использовать pandas.read_csv() или модуль csv для чтения .xlsx.
.xlsx
pandas.read_csv()
csv
Используйте pandas.read_excel() или модули для файлов Excel.См .: www.python-excel.org
pandas.read_excel()
Как я знаю .xlsx - это ZIP-файл с XML-файлом внутри - так что вы также можете попробовать разархивировать его и прочитать xml.