close

一、前言

Traceback (most recent call last):
  File "main.py", line 8, in <module>
    from mainModel import MainFrame
  File "PyInstaller\loader\pyimod03_importers.py", line 531, in exec_module
  File "mainModel.py", line 5, in <module>
    from MarketBreadth import *
  File "PyInstaller\loader\pyimod03_importers.py", line 531, in exec_module
  File "MarketBreadth.py", line 8, in <module>
    import talib
  File "PyInstaller\loader\pyimod03_importers.py", line 531, in exec_module
  File "talib\__init__.py", line 72, in <module>
ModuleNotFoundError: No module named 'talib.stream'
[22064] Failed to execute script main

在打包含有talib檔案時出現面錯誤嗎?以下我常用的解決方法分享一下。

還不會打包py檔變成exe五分鐘看這邊【Pyinstaller】用Pyinstaller乾淨俐落打包你的.py檔變.exe:3分鐘看完馬上會!

 

二、解決方式

跟著下列步驟1~3解決~

(1) 你會發現你打包失敗的檔案有一個.spec檔

2

 

(2) 打開他加入程式碼

在hiddenimports加入['talib.stream'],如果你有其他有import的套件但沒被打包到的都放進來。

0

 

(3) 再度打包一次

這次要打包的是剛剛修改過的.spec檔~

1

 

三、後記

其實直接用這個語句就可以了,不用先產出spec在打包一次。

pyinstaller -F --hiddenimport [套件包方法] [要打包的.py檔]

 

arrow
arrow

    恩哥Python 發表在 痞客邦 留言(0) 人氣()