ImportError: нет модуля с именем win32api

126

Я использую Python 2.7и я хочу использовать pywin32-214на Windows 7. Я установил pywin32-214с помощью msiустановщика. Но когда я импортирую win32apiсвой скрипт Python, он выдает ошибку:

no module named win32api. 

Что я должен делать? Могу я использовать pywin32 apiдля Windows 7?

Акшай
источник
У вас установлено несколько версий Python? Если да, то уверены ли вы, что пытаетесь импортировать с того же компьютера, на который его установили?
Claudiu
Возможно, путь установки установщика msi отличается от пути, из которого вы пытаетесь выполнить импорт.
aidnani8
Клаудиу: нет, у меня на компьютере установлен только python 2.7
Акшай
user3193087: На самом деле установщик msi установил файлы в мой подкаталог / python27 / .... вы можете импортировать любые файлы, которые установлены в подкаталогах. Я прав??
akshay

Ответы:

247

Это разрешает мой случай, как указано в разделе Где найти модуль win32api для Python?

pip install pypiwin32
Ciwidey Разработчик
источник
Я использую python2.7, и pypiwin32 успешно установлен
syam
Это сработало для меня только ПОСЛЕ перезапуска Spyder. В большинстве случаев новые пакеты работают сразу после установки, но не в этом случае.
Шон Маккарти
Работал в марте 2020 года для Python 3.7.5! Не знаю, почему это вообще продолжается ..
бесконечный
Я использовал его с python2.7 и получаю сообщение об ошибке «ОШИБКА: не удалось найти версию, удовлетворяющую требованию pywin32> = 223 (из pypiwin32) (из версий: нет)»
Авин Мэтью
35

У меня была идентичная проблема, которую я решил, перезапустив редактор Python и оболочку. Я установил, pywin32но новые модули не были подобраны до перезапуска.

Если вы уже сделали это, сделать поиск в установке Python для win32apiи вы должны найти win32api.pydпод ${PYTHON_HOME}\Lib\site-packages\win32.

Эрика Кейн
источник
1
Мне это тоже помогло. Сначала это не сработало. Затем я перезапустил все, и все заработало.
Шон Маккарти
30

Согласно pywin32 github вы должны запустить

    pip install pywin32

и после этого вы должны бежать

    python Scripts/pywin32_postinstall.py -install

Я знаю, что восстанавливаю старую ветку, но у меня только что была эта проблема, и это был единственный способ ее решить.

Juano
источник
Это сработало для меня. В своем проекте я использую pipenv. Пришлось запустить post_install.py в моей папке env.
poWar
У меня сейчас тоже есть проблемы с этим. Есть ли какое-нибудь представление о том, почему он не запускается? я получаю эту ошибку Отслеживание (последний вызов последним): файл "C: \ Users \ tws07yi \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ win32com_ init_ .py", строка 32, в SetupEnvironment key = win32api.RegOpenKey ( HKEY_LOCAL_MACHINE, keyName, 0, KEY_QUERY_VALUE) AttributeError: модуль 'win32api' не имеет атрибута 'RegOpenKey'
twseewx
@twseewx попробуйте запустить его от имени администратора.
Хуано,
Результат @Juano stame как в прошлый раз.
twseewx
@twseewx попробуйте при установке указать другую версию pywin32. Я только что снова установил и у меня все работает. Возможно, ваша загрузка была повреждена, или вы можете попробовать обновить версию Python.
Хуано
14

Я не нашел в моем дистрибутиве Python 3 пакет с наиболее популярным ответом.

У меня была такая же проблема, и я решил ее, установив модуль pywin32:

В обычном питоне:

pip install pywin32

В анаконде:

conda install pywin32

В моей установке python (Intel® Distribution для Python) была какая-то проблема с зависимостями, и она давала эту ошибку. После установки этого модуля он перестал появляться.

Невиш
источник
я использовал, conda install pywin32и это сработало. Спасибо огромное.
Нава Богати
1

После установки pywin32

Шаги по правильной установке вашего модуля (pywin32)

  1. Первый поиск, где присутствует ваш python pip

    1a. Например, в моем случае расположение пункта - C: \ Users \ username \ AppData \ Local \ Programs \ Python \ Python36-32 \ Scripts

  2. Затем откройте командную строку и смените каталог на расположение папки pip.

    cd C:\Users\username\AppData\Local\Programs\Python\Python36-32\Scripts
    
    C:\Users\username\AppData\Local\Programs\Python\Python36-32\Scripts>pip install 
    pypiwin32

Перезагрузите IDE.

Все готово, теперь вы можете использовать модуль.

sameer_nubia
источник