Python-метод read_excel KeyError 'show' - PullRequest
0 голосов
/ 25 октября 2019

Я пытаюсь прочитать файл Excel, расширение .xlsx, с помощью Pandas, и он отображает KeyError: 'show'

Это полная трассировка стека ошибок:

File "~/Python_VirtualEnv/api/lib/python3.7/site-packages/pandas/io/excel.py", line 653, in __init__
    self._reader = self._engines[engine](self._io)
File "~/Python_VirtualEnv/api/lib/python3.7/site-packages/pandas/io/excel.py", line 424, in __init__
    self.book = xlrd.open_workbook(filepath_or_buffer)
File "~/Python_VirtualEnv/api/lib/python3.7/site-packages/xlrd/__init__.py", line 138, in open_workbook
    ragged_rows=ragged_rows,
File "~/Python_VirtualEnv/api/lib/python3.7/site-packages/xlrd/xlsx.py", line 812, in open_workbook_2007_xml
    x12book.process_stream(zflo, 'Workbook')
File "~/Python_VirtualEnv/api/lib/python3.7/site-packages/xlrd/xlsx.py", line 271, in process_stream
    meth(self, elem)
File "~/Python_VirtualEnv/api/lib/python3.7/site-packages/xlrd/xlsx.py", line 397, in do_sheet
    bk._sheet_visibility.append(visibility_map[state])
KeyError: 'show'

ЕслиЯ открываю и снова сохраняю файл, затем он отлично читается, поэтому я думаю, что проблема в некотором форматировании или версиях Excel, которые не может прочитать pandas.

В моем приложении я не могу попросить пользователя выполнить повторное сохранение, поэтому оно должно работать немедленно. Я протестировал ~ 1000 файлов, и есть только один, который выдает эту ошибку.

Что я могу сделать, чтобы убедиться, что файл читается при возникновении этой ошибки?

1 Ответ

1 голос
/ 25 октября 2019

Таким образом, ваша ошибка возникает из-за старой ошибки из xlrd.

Проблема была исправлена ​​в Запросе извлечения # 323

Обновите пакет pandas, пакет xlrd, и он должен снова заработать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...