python openpyxl 读取excel失败 ,查了下可能是文件后缀的问题,但是我的后缀也没有问题呀

小阿通 2020-09-26 11:51:45
from openpyxl import load_workbook
import os


# 获取excel路径
cur_dir = os.path.dirname(os.path.abspath(__file__))
excel_path = os.path.join(cur_dir, "login_case.xlsx")

# 这就是打开excel
wb = load_workbook(excel_path)

# 通过表单名,获取表单
sh = wb['case1']

# 获取表头
titles = []

for index in range(1, sh.max_columu+1):
value = sh.cell(1, index).value
print(value)



打印:

D:\python\python.exe D:/pythonwork/python_study/study/class13/读取测试用例数据.py
Traceback (most recent call last):
File "D:/pythonwork/python_study/study/class13/读取测试用例数据.py", line 11, in <module>
wb = load_workbook(excel_path)
File "D:\python\lib\site-packages\openpyxl\reader\excel.py", line 315, in load_workbook
reader.read()
File "D:\python\lib\site-packages\openpyxl\reader\excel.py", line 276, in read
self.read_workbook()
File "D:\python\lib\site-packages\openpyxl\reader\excel.py", line 148, in read_workbook
wb_part = _find_workbook_part(self.package)
File "D:\python\lib\site-packages\openpyxl\reader\excel.py", line 113, in _find_workbook_part
raise IOError("File contains no valid workbook part")
OSError: File contains no valid workbook part
...全文
3364 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
小阿通 2020-09-28
  • 打赏
  • 举报
回复
之前好像是因为我用的2018的pycharm 和3.6的python, 现在我用最新的pycharm和3.8.5的python ,现在就没问题了
snjaychou 2020-09-27
  • 打赏
  • 举报
回复 1
不是.xlsx后缀就一定能打开。也有可能是.xls后缀改的.xlsx。建议重新另存为试一下。然后就是max_column拼写错了。
丰耳 2020-09-27
  • 打赏
  • 举报
回复
1.建议你把login_case.xlsx打开的截图发出来,这样有助于判断问题 2.for index in range(1, sh.max_columu+1)------最大列是max_column,你写成max_columu了
陈年椰子 2020-09-27
  • 打赏
  • 举报
回复
用 excel 打开,另存为1个新文件。 再试着用python 打开新文件。 这种情况一般是文件格式有问题,比如是office 97 格式, 但文件名是 xlsx

37,743

社区成员

发帖
与我相关
我的任务
社区描述
JavaScript,VBScript,AngleScript,ActionScript,Shell,Perl,Ruby,Lua,Tcl,Scala,MaxScript 等脚本语言交流。
社区管理员
  • 脚本语言(Perl/Python)社区
  • WuKongSecurity@BOB
加入社区
  • 近7日
  • 近30日
  • 至今

试试用AI创作助手写篇文章吧