ImportError: жоден модуль з іменем win32api


126

Я використовую Python 2.7і хочу використовувати pywin32-214далі Windows 7. Я встановив pywin32-214за допомогою msiінсталятора. Але коли я імпортую win32apiв сценарій Python, він видає помилку:

no module named win32api. 

Що я повинен зробити? Можу чи я використовувати pywin32 apiдля Windows 7?


У вас встановлено кілька версій Python? Якщо так, то ви впевнені, що намагаєтесь імпортувати з того самого, до якого встановили?
Клавдіу

Можливо, що встановлений інсталятор шляху не відрізняється від шляху, з якого ви намагаєтеся імпортувати.
aidnani8

Клавдіу: ні, на моєму ПК я встановив лише python 2.7
akshay

user3193087: Власне, інсталятор msi встановив файли до мого / python27 / ... підкаталогу. Ви можете імпортувати будь-які файли, встановлені в підкаталогах. Маю рацію??
акшай

Відповіді:


247

Це вирішити мій випадок, як знайдено в розділі Де знайти модуль win32api для Python?

pip install pypiwin32

Я використовую python2.7 і pypiwin32 був успішно встановлений
syam

Це працювало для мене лише після того, як я перезапустив Spyder. Більшість разів нові пакети працюють відразу після їх встановлення, але не в цьому випадку.
Шон Маккарті

Працював у березні 2020 року для Python 3.7.5! Не впевнений, чому це навіть затримається ..
нескінченний

я використовував його з python2.7, і я отримую помилку "ПОМИЛКА: Не вдалося знайти версію, яка б задовольняла вимогу pywin32> = 223 (від pypiwin32) (від версій: жодна)"
Avin Mathew

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

Я знаю, що відроджую стару нитку, але у мене просто була ця проблема, і це був єдиний спосіб її вирішити.


Це працювало для мене. Я використовую pipenv у своєму проекті. Довелося запустити post_install.py в моїй папці env.
poWar

Я зараз зачіпаю деякі проблеми з цим. Чи є розуміння того, чому він не запустився? я отримую цю помилку Traceback (останній дзвінок останній): Файл "C: \ Користувачі \ tws07yi \ AppData \ Local \ Програми \ Python \ Python37 \ lib \ site-пакети \ win32com_ init_ .py", рядок 32, у SetupEnvironment key = win32api.RegOpenKey ( HKEY_LOCAL_MACHINE, keyName, 0, KEY_QUERY_VALUE) AttributeError: модуль 'win32api' не має атрибута 'RegOpenKey'
twseewx

@twseewx спробуйте запустити його як адміністратор.
Juano

@Juano результат удару, як і востаннє.
twseewx

@twseewx спробуйте вказати іншу версію pywin32 при установці. Я щойно встановив його знову і для мене працює. Можливо, завантаження було пошкоджено, або ви можете спробувати оновити версію python.
Juano

14

У моєму окрузі Python 3 я не знайшов пакет найбільш відповідної відповіді.

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

У звичайному пітоні:

pip install pywin32

У анаконді:

conda install pywin32

У моїй установці python (Intel® Distribution for Python) виникла якась проблема залежності, і ця помилка давалась. Після встановлення цього модуля він перестав з’являтися.


я використовував, conda install pywin32і це працювало. Спасибі величезне
Nava Bogatee

1

Після встановлення pywin32

Кроки щодо правильної установки модуля (pywin32)

  1. Перший пошук, де знаходиться ваш пітон пітон

    1а. Наприклад, у моєму випадку розташування pip - C: \ Users \ username \ AppData \ Local \ Programs \ Python \ Python36-32 \ Scripts

  2. Потім відкрийте командний рядок та змініть каталог на місце розташування своєї папки.

    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

Все, що зараз зроблено, ви можете використовувати модуль.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.