为什么我用xlrd.open会报错

Traceback (most recent call last):
  File "C:\Users\Lenovo\Desktop\爬虫总结.py", line 300, in <module>
    save.xlsx_init()
  File "C:\Users\Lenovo\Desktop\爬虫总结.py", line 222, in xlsx_init
    self.file = xlrd.open_workbook(self.way)
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python36-32\lib\site-packages\xlrd\__init__.py", line 182, in open_workbook
    ignore_workbook_corruption=ignore_workbook_corruption,
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python36-32\lib\site-packages\xlrd\book.py", line 79, in open_workbook_xls
    biff_version = bk.getbof(XL_WORKBOOK_GLOBALS)
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python36-32\lib\site-packages\xlrd\book.py", line 1284, in getbof
    bof_error('Expected BOF record; found %r' % self.mem[savpos:savpos+8])
  File "C:\Users\Lenovo\AppData\Local\Programs\Python\Python36-32\lib\site-packages\xlrd\book.py", line 1278, in bof_error
    raise XLRDError('Unsupported format, or corrupt file: ' + msg)
xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found b'name\tid\t'

另存在xls,再来一次。

img

name\tid\t 绝对路径再加上文件扩展名试试

img


检查下你的文件后缀名是否和你的调用函数匹配(xls 还是 xlsx),检查下路径name\tid\t
另外:如果你 打开了的excel会作为临时文件被程序识别,类似‘~$huasuo_sales.xlsx’,而此时该临时文件是被破坏的(你的路径上看看有没有原文件),删完或关闭打开的excel之后,可以正常读取。因此建议把程序需要读取的excel文件换一个文件换一个路径试试