Невозможно запустить PyInstaller - «Пожалуйста, установите PyWin32 или pywin32-ctypes»

Я использую 32-разрядную версию Python 3.7 в 64-разрядной версии Windows 10. Python был установлен из исполняемого файла на веб-сайте Python, а НЕ из пакета Anaconda. Когда я запускаю pyinstaller из командной строки, он возвращает ошибку: Сообщение об ошибке Я уже установил pypiwin32, pywin32 и win32ctypes. Но все равно есть ошибка.

Я попытался запустить pyinstaller из Windows CMD, Pycharm и виртуальной среды, все с установленными необходимыми библиотеками, но я не могу заставить его работать.

Я много гуглил по этой проблеме, но не смог найти ответа. Кто-нибудь может помочь?

Вы уверены, что (а) у вас только один Python и (б) вы установили 32-разрядные версии pywin32 и pyinstaller? (Если вы установили все через pip, то (b) не проблема, но если вы загрузили и запустили установщики, это может быть, и, поскольку веб-сайт pywin32 по-прежнему рекомендует устанавливать его, большинство людей так и делают.)

abarnert 06.09.2018 01:15

У меня только 1 версия Python, и я установил ее через pip install, а не через установщик, поэтому все они 32-битные. Не уверен, что еще мне попробовать ...

Steven Tran 09.09.2018 03:21
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
2
4 895
3

Ответы 3

Я запускаю Python 3.6 на 32-битной 64-битной машине с Windows 10. Используя последнюю стабильную версию из «pip install pyinstaller», я столкнулся с той же ошибкой, что и вы.

Самый быстрый способ исправить это - запустить из cmd следующее:

pip uninstall pyinstaller

Затем запустите в cmd следующее:

pip install https://github.com/pyinstaller/pyinstaller/tarball/develop

Это дает вам версию, которая в настоящее время находится в разработке, в которой проблема исправлена.

Пожалуйста, смотрите https://media.readthedocs.org/pdf/pyinstaller/latest/pyinstaller.pdf для получения дополнительной информации.

У меня такая же проблема, к сожалению, установка последней версии и восстановление у меня не сработали. Типы pywin32 и pywin32-ctypes установлены, но я все еще вижу указанное выше сообщение об ошибке.

aurath 01.11.2018 20:39

Я использую Python3.6 (32-разрядный) на компьютере с Windows 10 (64-разрядный). Я удалил и (пере) установил pyinstaller (выпуск и разработка), pywin32, pywin32-ctypes и даже pypiwin32 (не знаю, что это такое), и ничего из этого не решает проблему. Что попробовать дальше ????

BrendanSimon 26.03.2019 04:11

У меня такая же проблема (Win 10 x64, Python 3.7.3), и мне помогло использование версии для разработки.

Ivanoff 09.09.2019 15:29

Та же проблема (Win 10 x64, Python 3.9.1), разрабатываемая версия не исправляет

Swedgin 17.12.2020 15:47

Откройте python (проверено с использованием Python 3.7.4) и проверьте, можно ли найти модули из среды без вмешательства:

python.exe
>>>import pywintypes
>>>import win32api

В случае успеха исправить просто. Найдите файл compat.py внутри папки PyInstaller. и отредактируйте следующие две строки.

Заменить:

    from win32ctypes.pywin32 import pywintypes
    from win32ctypes.pywin32 import win32api

с

    import pywintypes
    import win32api

Я где-то читал, что auto-py-to-exe устанавливает правильную версию pywin32-ctypes. Таким образом, решение может быть следующим: установите пакет auot-py-to-exe.

Я не видел проблемы. Таким образом не проверили, действительно ли решение или нет.

Некоторое время использовал auto-py-to-exe. Иногда требуются другие настройки, чтобы заставить его работать по причинам, не связанным с проблемой в этой SO. Поскольку он основан на PyInstaller, при его установке должны быть установлены все правильные зависимости для PyInstaller.

Другие вопросы по теме