Python 打开相同的文件时遇到问题openpyxl

Python 打开相同的文件时遇到问题openpyxl,python,openpyxl,Python,Openpyxl,写一个程序,它将文件中的内容剥离。所有文件几乎都是相同的,但对其中一些文件不起作用。我不明白 for file in allFiles: print(file) items = [] fileName = file fileIndex = 1 directory = os.path.join(path, fileName[:-5].strip()) if not os.path.exists(directory): os.mkdir(directory) theFile = o

写一个程序,它将文件中的内容剥离。所有文件几乎都是相同的,但对其中一些文件不起作用。我不明白

for file in allFiles:
print(file)
items = []
fileName = file
fileIndex = 1
directory = os.path.join(path, fileName[:-5].strip())
if not os.path.exists(directory):
    os.mkdir(directory)
    
theFile = openpyxl.load_workbook(file)
allSheetNames = theFile.sheetnames
经过一定数量的文件后,它向我显示以下错误:

Traceback (most recent call last):
  File "D:\staff\Python\NewProject\glow.py", line 25, in <module>
    theFile = openpyxl.load_workbook(file)
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\reader\excel.py", line 313, in load_workbook
    reader = ExcelReader(filename, read_only, keep_vba,
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\reader\excel.py", line 124, in __init__
    self.archive = _validate_archive(fn)
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\site-packages\openpyxl\reader\excel.py", line 96, in _validate_archive
    archive = ZipFile(filename, 'r')
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\zipfile.py", line 1269, in __init__
    self._RealGetContents()
  File "C:\Users\User\AppData\Local\Programs\Python\Python38-32\lib\zipfile.py", line 1336, in _RealGetContents
    raise BadZipFile("File is not a zip file")
zipfile.BadZipFile: File is not a zip file

您迭代所有与文件类型无关的文件。可能是您或某个进程向目录中添加了一个不是xlsx文件的文件。这就是openpyxl无法读取它的原因。

添加了如何查找所有文件。
path = os.getcwd()
sourcePath = os.getcwd() + '\source'
extension = 'xlsx'
os.chdir(sourcePath)
allFiles = glob.glob('*.{}'.format(extension))