EDITAR
Estoy tratando de importar algosec.models en un archivo dentro del paquete algobot .
Intenté agregar --hidden-import algosec , también intenté agregar la ruta antes de importar, usando sys.path.append(./../algosec) este es el mensaje de error que recibo cuando intento ejecuta el programa:
Traceback (most recent call last): File "algobot_packer/algobot.py", line 2, in <module> File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module File "algobot/cli/cli.py", line 3, in <module> File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module File "algobot/microsoft_teams/mainloop.py", line 9, in <module> File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module File "algobot/framework/configuration.py", line 34, in <module> File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module File "algobot/framework/commands.py", line 22, in <module> File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module File "algobot/framework/bot.py", line 4, in <module> File "PyInstaller/loader/pyimod03_importers.py", line 546, in exec_module File "algobot/framework/responses.py", line 9, in <module> ModuleNotFoundError: No module named 'algosec'la estructura de carpetas es:
Estoy usando la versión 4.2 de pyinstaller . No hice ningún cambio en el código desde la última vez que mi archivo ejecutable funcionó perfectamente bien, pero ahora recibo este error cada vez. la cuestión es que la carpeta 'algosec' es un subdirectorio en mi proyecto, y está anotado en el archivo pip y nuevamente, no hice ningún cambio en un tiempo y lo probé recientemente (última prueba el 8 de julio)), por lo tanto Creo que es un problema de dependencia, pero no estoy seguro de cuál o cómo resolverlo.
Probé varios cambios que de alguna manera funcionaron en una sola ejecución, pero cuando intenté hacer estos cambios nuevamente, fallaron en otras versiones...
Puedes usar
--add-data "path_to_algobot:."
basado en su sistema para uso de windows ; y para uso de linux :
Agregará explícitamente su carpeta algosec al paquete.
Aparentemente, dado que tomé la versión más alta de zeep y la deprecated sin proporcionar una versión fija, causó problemas debido a una versión más reciente. Tuve que agregarlos a setup.py del paquete algobot que es el paquete principal del ejecutable con una versión fija.
Además, tuve que agregar un archivo .egg del paquete algosec con --paths para que pyinstaller lo encontrara.