ImportError: aucun module nommé win32api

126

J'utilise Python 2.7et je veux utiliser pywin32-214sur Windows 7. J'ai installé pywin32-214en utilisant le programme d' msiinstallation. Mais lorsque j'importe win32apidans mon script Python, cela génère l'erreur:

no module named win32api. 

Que devrais-je faire? Puis-je utiliser pywin32 apipour Windows 7?

akshay
la source
Avez-vous plusieurs versions de Python installées? Si tel est le cas, êtes-vous sûr d'essayer d'importer à partir de celui sur lequel vous l'avez installé?
Claudiu
Il est possible que le chemin du programme d'installation msi installé soit différent du chemin à partir duquel vous essayez d'importer.
aidnani8
Claudiu: non, je n'ai installé que python 2.7 sur mon PC
akshay
user3193087: En fait, le programme d'installation msi a installé des fichiers dans mon sous-répertoire / python27 / .... vous pouvez importer tous les fichiers installés dans les sous-répertoires. Ai-je raison??
akshay

Réponses:

247

Ceci résout mon cas comme indiqué sur Où trouver le module win32api pour Python?

pip install pypiwin32
Développeur Ciwidey
la source
J'utilise python2.7 et pypiwin32 a été installé avec succès
syam
Cela n'a fonctionné pour moi qu'après avoir redémarré Spyder. La plupart du temps, les nouveaux packages fonctionnent immédiatement après leur installation, mais pas dans ce cas.
Sean McCarthy le
A travaillé en mars 2020 pour Python 3.7.5! Je ne sais pas pourquoi cela persiste même ...
interminable
Je l'ai utilisé avec python2.7 et j'obtiens l'erreur "ERREUR: Impossible de trouver une version qui satisfait à l'exigence pywin32> = 223 (de pypiwin32) (de versions: aucune)"
Avin Mathew
35

J'ai eu un problème identique, que j'ai résolu en redémarrant mon éditeur et mon shell Python. J'avais installé pywin32mais les nouveaux modules n'ont pas été repris avant les redémarrages.

Si vous avez déjà fait cela, faites une recherche dans votre installation Python pour win32apiet vous devriez trouver win32api.pydsous ${PYTHON_HOME}\Lib\site-packages\win32.

Erica Kane
la source
1
Cela m'a aidé aussi. Au début, ça ne marcherait pas. Ensuite, j'ai tout redémarré et cela a fonctionné.
Sean McCarthy le
30

Selon pywin32 github, vous devez exécuter

    pip install pywin32

et après ça, tu dois courir

    python Scripts/pywin32_postinstall.py -install

Je sais que je relance un vieux fil, mais je viens d'avoir ce problème et c'était la seule façon de le résoudre.

Juano
la source
Cela a fonctionné pour moi. J'utilise pipenv dans mon projet. J'ai dû exécuter le post_install.py dans mon dossier env.
poWar
Je rencontre également des problèmes avec cela en ce moment. Y a-t-il une idée de pourquoi il ne fonctionnerait pas? j'obtiens cette erreur. Traceback (dernier appel en dernier): Fichier "C: \ Users \ tws07yi \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ site-packages \ win32com_ init_ .py", ligne 32, dans SetupEnvironment key = win32api.RegOpenKey ( HKEY_LOCAL_MACHINE, keyName, 0, KEY_QUERY_VALUE) AttributeError: le module 'win32api' n'a pas d'attribut 'RegOpenKey'
twseewx
@twseewx essayez de l'exécuter en tant qu'administrateur.
Juano
@Juano a stame le résultat la dernière fois.
twseewx le
@twseewx essayez de spécifier une version différente de pywin32 lors de l'installation. Je viens de l'installer à nouveau et pour moi ça marche. Peut-être que votre téléchargement a été corrompu, ou vous pouvez essayer de mettre à jour votre version de python.
Juano le
14

Je n'ai pas trouvé le paquet de la réponse la plus votée dans ma distribution Python 3.

J'ai eu le même problème et je l'ai résolu en installant le module pywin32:

Dans un python normal:

pip install pywin32

Dans anaconda:

conda install pywin32

Mon installation python (Intel® Distribution pour Python) avait une sorte de problème de dépendance et donnait cette erreur. Après avoir installé ce module, il a cessé d'apparaître.

neves
la source
J'ai utilisé conda install pywin32et cela a fonctionné. Merci énormément.
Nava Bogatee
1

Après l'installation de pywin32

Étapes pour installer correctement votre module (pywin32)

  1. Première recherche où se trouve votre pip python

    1a. Par exemple, dans mon cas, l'emplacement de pip - C: \ Users \ username \ AppData \ Local \ Programs \ Python \ Python36-32 \ Scripts

  2. Ensuite, ouvrez votre invite de commande et changez de répertoire en l'emplacement de votre dossier 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

Redémarrez votre IDE

Tout est fait maintenant, vous pouvez utiliser le module.

sameer_nubia
la source