Я получаю эту ошибку, когда пытаюсь создать файл .exe через pyinstaller - «ModuleNotFoundError: нет модуля с именем« acrcloud_extr_tool »» - PullRequest
0 голосов
/ 11 февраля 2019

Я использую ACRCloud для распознавания аудиофайла, я построил графический интерфейс с помощью tkinter и замораживаю код как файл .exe с помощью PyInstaller.Тем не менее, я получаю эту ошибку при запуске файла .exe:

ModuleNotFoundError: No module named 'acrcloud_extr_tool'

Если я запускаю его непосредственно из скрипта, ошибки нет, и она работает нормально.Некоторая помощь, пожалуйста?Я только начинаю.

Ответы [ 2 ]

0 голосов
/ 12 февраля 2019

Я решил это.Оказывается, из-за того, что это двоичный файл (с расширением .pyd), его нужно было явно добавить в файл .spec (см. Документацию по pyinstaller).Я сделал это, и он побежал как очарование.

0 голосов
/ 11 февраля 2019

Из моего опыта использования pyinstaller мне нужно добавить параметр в команду сборки, чтобы pyinstaller знал, где искать модули.Если вы собираете из командной строки, строка может выглядеть примерно так:

pyinstaller "yourFileName.py"  

Однако вы можете добавить к этому другие команды, которые определяют, как создается исполняемый файл - есть ли у него пользовательский значок,это консоль или консоль скрыта и т. д. Кроме того, вы можете добавить список путей, сообщающих pyinstaller, где искать ваши модули, и это делается так:

pyinstaller -p C:\theFolderWhereYourCustomModulesAreSaved:C:\Users\yourName\AppData\Local\Programs\Python\Python36-32\Lib\site-packages  "yourFileName.py"

Обратите внимание, что кавычек нетвокруг этих путей к файлам И что они разделены двоеточием.Путь к вашим пакетам сайта Python может немного отличаться от моего, но я оставил во всех данных о пути, за исключением моего имени пользователя, поэтому отредактируйте его по мере необходимости для своего компьютера.Кроме того, первый «поддельный» путь, который я показал в этом примере, был бы, если вы написали несколько своих собственных модулей и импортировали их в свой проект.Например, если ваш основной проект сохранен в C: \ myProject, но у вас есть написанные вами модули, которые импортируются в вашу программу следующим образом:

import myCustomModule

, и эти модули сохраняются в C: \ myProject\ myModules, тогда вы изменили бы эту команду так:

pyinstaller -p C:\myProject\myModules:C:\Users\yourName\AppData\Local\Programs\Python\Python36-32\Lib\site-packages  "yourFileName.py"

Надеюсь, это решит вашу проблему.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...