2017-01-26 50 views
2

我编写了一个脚本,它打开并从.ods文件中提取值,并创建一个新工作表并使用pyexcelpyexcel_ods3写入值。转换成可执行文件后,我得到这个错误No suitable library found for odsPython - '找不到适合ods的库'Pyinstaller

代码:

sheet = pyexcel.get_sheet(file_name="sample.ods") 

pyexcel - 0.4.2 pyexcel-IO - 0.3.1 pyexcel-ODS3 - 0.3.0 PyInstaller - 3.2.1

PS:我试图隐藏的进口和钩子。我做了一些工作,并认为它的__import__manager.pypyexcel_io

+0

我们不知道你写了什么。 –

+0

对不起。这是我第一次问一个问题。我的脚本在作为脚本运行时工作,但在将其转换为可执行文件后导致错误,因为“没有找到适合ods的库”。 – Guhan

+0

修剪到展现相同行为的最小示例。可能只是一个导入和打包的版本就足够了。然后在这里发布(在你的问题中,而不是在评论中)。 –

回答

0

您可能需要告诉PyInstaller将pyexcel_ods3库添加到hidden_imports命令行参数中。

实现相同目标的另一种方法是在您的某个应用代码文件中明确导入pyexcel_ods3。这将导致PyInstaller将库识别为依赖项。

+0

我试过了,但仍然没有工作。 – Guhan

+0

请参考http://stackoverflow.com/questions/42983559/unable-to-use-pyexcel-xls-with-pyinstaller-python-executable-not-working-pyt。缺少的是:'--hidden_​​imports pyexcel_ods3.ods'。请参阅此处的说明:http://pyexcel-io.readthedocs.io/en/latest/#special-note-on-pyinstaller – chfw