如何检查 python xlrd 库中的 excel 文件是否有效

How to check if valid excel file in python xlrd library

xlrd 库有什么方法可以检查您使用的文件是否是有效的 excel 文件?我知道还有其他库可以检查文件头,我可以使用文件扩展名检查。但是为了 多平台性 我想知道是否有任何我可以在 xlrd 库本身中使用的函数可以 return 之类的东西尝试打开文件然后通知用户时为 false。

我是 Python 的新手,所以我尝试调试 xlrd.open_workbook 函数但没有成功。

您可以尝试打开工作簿,但在 try/except 块中捕获 XLRDError 异常以防文件格式不受支持:

>>> from xlrd import open_workbook, XLRDError
>>> try:
...     book = open_workbook('test.txt')
... except XLRDError as e:
...     print e
... 
Unsupported format, or corrupt file: Expected BOF record; found '--index-'

或者使用一个简单的函数:

from xlrd import open_workbook, XLRDError

def test_book(filename):
    try:
        open_workbook(filename)
    except XLRDError:
        return False
    else:
        return True