python - pyexcel/openpyxl __init__() 得到了一个意外的关键字参数错误

标签 python excel openpyxl pyexcel

尝试将文件上传回我们的应用程序时,我收到以下错误堆栈。该应用程序采用 xlsx 表格并能够解析它们并将内容上传回 SalesForce。我对这个问题进行了一些研究,看起来它在兼容性方面可能与 openpyxl 有关,但我不是 100% 确定。似乎其他人也遇到了这个问题,但似乎没有列出任何解决方案。有没有其他人遇到过这个问题?

load_workbook error for 1707 version excel & pip install/upgrade error openpyxl

https://bitbucket.org/openpyxl/openpyxl/issues/636/error-when-loading-outlookcom-web-excel

 Traceback (most recent call last):
   File "/usr/lib/python2.6/site-packages/flask/app.py", line 1817, in wsgi_app
     response = self.full_dispatch_request()
   File "/usr/lib/python2.6/site-packages/flask/app.py", line 1477, in full_dispatch_request
     rv = self.handle_user_exception(e)
   File "/usr/lib/python2.6/site-packages/flask/app.py", line 1381, in handle_user_exception
     reraise(exc_type, exc_value, tb)
   File "/usr/lib/python2.6/site-packages/flask/app.py", line 1475, in full_dispatch_request
     rv = self.dispatch_request()
   File "/usr/lib/python2.6/site-packages/flask/app.py", line 1461, in dispatch_request
     return self.view_functions[rule.endpoint](**req.view_args)
   File "/var/www/html/nurfi/run.py", line 139, in upload_file
     responses = upload_nurfi_files(files_to_upload)
   File "/var/www/html/nurfi/nurfinstein.py", line 134, in upload_nurfi_files
     statuses[filename] = upload_sheet(file_, sf, verbose_mode = False )
   File "/var/www/html/nurfi/nurfi_app/upload/upload_nurfi.py", line 74, in upload_sheet
     book_dict = pyexcel.get_book_dict(file_name = workbook_name)
   File "/usr/lib/python2.6/dist-packages/pyexcel/core.py", line 343, in get_book_dict
     book = get_book(**keywords)
   File "/usr/lib/python2.6/dist-packages/pyexcel/core.py", line 118, in get_book
     book_stream = _get_book(**keywords)
   File "/usr/lib/python2.6/dist-packages/pyexcel/core.py", line 137, in _get_book
     sheets = source.get_data()
   File "/usr/lib/python2.6/dist-packages/pyexcel/sources/file_source_input.py", line 52, in get_data
     sheets = get_data(self.file_name, streaming=True, **self.keywords)
   File "/usr/lib/python2.6/dist-packages/pyexcel_io/io.py", line 31, in get_data
     file_type=file_type, **keywords)
   File "/usr/lib/python2.6/dist-packages/pyexcel_io/io.py", line 120, in load_data_new
     reader.open(file_name, **keywords)
   File "/usr/lib/python2.6/dist-packages/pyexcel_xlsx/xlsx.py", line 87, in open
     self._load_from_file()
   File "/usr/lib/python2.6/dist-packages/pyexcel_xlsx/xlsx.py", line 127, in _load_from_file
     data_only=True)
   File "/usr/lib/python2.6/dist-packages/openpyxl/reader/excel.py", line 234, in load_workbook
     parser.parse()
   File "/usr/lib/python2.6/dist-packages/openpyxl/reader/worksheet.py", line 106, in parse
     dispatcher[tag_name](element)
   File "/usr/lib/python2.6/dist-packages/openpyxl/reader/worksheet.py", line 295, in parse_data_validation
     dv = DataValidation.from_tree(node)
   File "/usr/lib/python2.6/dist-packages/openpyxl/descriptors/serialisable.py", line 78, in from_tree
     return cls(**attrib)
 TypeError: __init__() got an unexpected keyword argument '{http://schemas.microsoft.com/office/spreadsheetml/2014/revision}uid'

最佳答案

所以希望我的时间挖掘这个可以节省一些其他人一些时间。似乎可以通过将 openpyxl 及其依赖插件之一 openpyxl_xlsx 更新到最新版本来解决此问题。我还建议您是否使用 pyexcel 将其更新到最新包,并且我相信它使用 openpyxl 作为依赖项。

sudo pip install openpyxl --upgrade
sudo pip install openpyxl_xlsx --upgrade
sudo pip install pyexcel --upgrade

或者对于特定版本...
sudo pip install --upgrade 'package-name'==0.0.0 (Version Number)

关于python - pyexcel/openpyxl __init__() 得到了一个意外的关键字参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47312895/

相关文章:

Excel - 具有三个值的 If 条件

java - 如何处理 POI 中的空数字单元格

python - 无法在 Excel 文件中写入新填充的结果(源自反向搜索)

Python - 如何从现有列表中填充字典列表

python - 在 ReactJS 上使用 django Web 应用程序后端和移动应用程序

python - 结合 f 字符串和原始字符串文字

python - 如何使用 Python 设置本地 HTTP 服务器

Java用另一个程序打开文件

Python 3 从子列表末尾删除 None 值,或者如果子列表完全是 None 值则排除

python:从 python 字符串列表中提取 float (AUD 31.99)