首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pyexcel突然不再打开.xlsx (或.xls)

pyexcel突然不再打开.xlsx (或.xls)
EN

Stack Overflow用户
提问于 2022-06-20 13:59:44
回答 1查看 46关注 0票数 0

我安装了所有必要的依赖项:

代码语言:javascript
复制
pyexcel==0.7.0
pyexcel-ezodf==0.3.4
pyexcel-io==0.6.6
pyexcel-ods3==0.6.1
pyexcel-xls==0.7.0

(还有一些,我省略了)。上周我的密码起作用了。现在我无法打开完全相同的.xls

代码语言:javascript
复制
>>> p = Path("data/jr1305221.xls")
>>> p.exists()
True
>>> pyexcel.get_book(file_name=p)
Traceback (most recent call last):
  File "<stdin>", line 2, in <module>
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\core.py", line 47, in get_book
    book_stream = sources.get_book_stream(**keywords)
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\core.py", line 36, in get_book_stream
    a_source = SOURCE.get_book_source(**keywords)
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\source_plugin.py", line 85, in get_book_source
    return self.get_a_plugin(
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\source_plugin.py", line 69, in get_a_plugin
    source_cls = self.load_me_now(
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\source_plugin.py", line 41, in load_me_now
    if source.is_my_business(action, **keywords):
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\plugins\__init__.py", line 56, in is_my_business
    raise IOError("Unsupported file type")
OSError: Unsupported file type
>>>

或.xlsx

代码语言:javascript
复制
>>> p = Path('data/dummy.xlsx')
>>> p.exists()
True
>>> pyexcel.get_book(file_name=p)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\core.py", line 47, in get_book
    book_stream = sources.get_book_stream(**keywords)
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\core.py", line 36, in get_book_stream
    a_source = SOURCE.get_book_source(**keywords)
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\source_plugin.py", line 85, in get_book_source
    return self.get_a_plugin(
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\source_plugin.py", line 69, in get_a_plugin
    source_cls = self.load_me_now(
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\internal\source_plugin.py", line 41, in load_me_now
    if source.is_my_business(action, **keywords):
  File "C:\Users\User McUser\AppData\Local\Programs\Python\Python310\lib\site-packages\pyexcel\plugins\__init__.py", line 56, in is_my_business
    raise IOError("Unsupported file type")
OSError: Unsupported file type
>>>

即使在我的码头集装箱里,它也停止工作了。

作为另一种选择,我也尝试过

代码语言:javascript
复制
with open('data/dummy.xlsx', 'r') as f:
    pyexcel.get_book(file_name=f)

得到同样的错误。

我又看了一遍医生的书。我已经把我的代码退回到上周了。我做了什么才值得这么做?上帝为什么要抛弃我?

EN

回答 1

Stack Overflow用户

发布于 2022-06-21 07:10:13

file_name需要是一个字符串,在这里我传入了一个pathlib.PosixPath

也就是说,这将返回错误:

代码语言:javascript
复制
p = Path('my_file')
pyexcel.get_book(file_name=p)

这样做是可行的:

代码语言:javascript
复制
pyexcel.get_book(file_name='my_file')

您可以使用pyexcel.get_book(file_name=my_file.as_posix())PosixPath获取字符串表示形式。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72688291

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档