У меня есть каталог с различными файлами Excel.
Я читаю все файлы, чтобы понять, какие из них содержат c имя листа.
Один из этих файлов защищен паролем.
Я хочу, чтобы пропустил этот файл , потому что он не актуален.
Я пытался кодировать и Exception
, но все равно получаю это сообщение об ошибке:
XLRDError: Can't find workbook in OLE2 compound document
Это код, который я написал:
path = 'c:\\some\path\where\find\the\excel\files'
extension = 'xlsx'
os.chdir(path)
result = glob.glob('*.{}'.format(extension))
for name in result:
xl=pd.ExcelFile(name)
sheet=set(xl.sheet_names)
#name of the sheet inside the file where we take the actuals
actuals_2019 = '2020 budget and target'
try:
if actuals_2019 in sheet:
print(name,"contains the sheet")
else:
print(name,"doesn't contain the sheet")
except xlrd.XLRDError:
print(name,"is a protected file")
Здесь модули Я импортировал:
import pandas as pd
import numpy as np
import os
import glob
import matplotlib.pyplot as plt
from xlrd import XLRDError
У меня также:
- Прочитайте этот вопрос , который похож на мой на
XLRDError
- Обновлены все модули, и я получаю ту же ошибку
- Пробовал
xlrd.biffh.XLRDError
, потому что это был единственный результат поиска по официальной документации здесь, когда вы ищете XLRDError