PyInstaller“您可以使用`skimage.io.use_plugin`加载I / O插件”

问题描述 投票:3回答:1

使用Pyinstaller打包python脚本

Pyinstaller版本3.2

操作系统:Ubuntu

Traceback (most recent call last):
  File "<string>", line 57, in <module>
  File "<string>", line 29, in feature_extract
  File "caffe/io.py", line 295, in load_image
  File "skimage/io/_io.py", line 100, in imread
  File "skimage/io/manage_plugins.py", line 194, in call_plugin
RuntimeError: No suitable plugin registered for imread.

You may load I/O plugins with the `skimage.io.use_plugin` command.  A list of all available plugins can be found using `skimage.io.plugins()`.
file_test returned -1

我一直在犯错误。有人可以告诉我如何解决它?

python pyinstaller
1个回答
2
投票

问题似乎与这个github issue有关,基本上skimage.io._plugins子模块正在为Pyinstaller带来生活困难。

为了确保您需要的所有东西都打包,您应该有一个包含的hook file

from PyInstaller.utils.hooks import collect_data_files, collect_submodules

datas = collect_data_files("skimage.io._plugins")
hiddenimports = collect_submodules('skimage.io._plugins')

(或者如果你已经有了这些钩子文件,请扩展当前的datashiddenimports)。

© www.soinside.com 2019 - 2024. All rights reserved.