2011-02-01 32 views
36

Estoy tratando de instalar pywin32. Lo descargué de sourceforge.net. Cuando ejecutoCómo instalar el módulo pywin32 en Windows 7

setup.py install 

muestra "No se puede encontrar vcvarsall.bat". Busqué en Google al respecto y han descubierto que tengo que instalar MinGW y la ruta se establece a continuación se ejecutan

python setup.py build --compiler=mingw32 

pero está mostrando

Can't find a version in Windows.h 

¿Alguien puede ayudar? (Tengo instalada una versión de prueba de Visual Studio 2010 Ultimate y compilador MinGW C y C++. Sistema operativo: Windows 7.)

¿Alguien puede decirme una fuente desde donde puedo descargar los archivos binarios de Python ya compilados en MinGW, entonces No tengo que hacer todo esto. O si puedo obtener un Python que ya tenga módulos de Windows.

Respuesta

29

¿Estás tratando de instalarlo o estás buscando construir desde la fuente?

Si sólo tiene que instalar, la forma más fácil es usar los instaladores MSI proporcionados aquí:

http://sourceforge.net/projects/pywin32/files/pywin32/ (para las versiones actualizadas)

asegurarse de obtener la versión correcta (coincide con la versión de Python, 32 bits/64 bits, etc.)

+0

Gracias por la ayuda. – narayanpatra

+0

Esto funcionó para mí en Windows 7 de 64 bits con Python 3.5. Gracias por el consejo. –

5

Tuve exactamente el mismo problema. El problema era que Anaconda no había registrado Python en el registro de Windows.

1) PIP instalar pywin
2) ejecutar este script registrar Python en el registro de Windows
3) bajar el formulario de paquete adecuado Corey respuesta y pitón Goldberg 's serán detectados

10

estoy de acuerdo con the accepted answer siendo "el más fácil", especialmente si desea usar virtualenv.

En su lugar, puede usar el Unofficial Windows Binaries. Descargar la rueda adecuada a partir de ahí, e instalarlo con pip:

pip install pywin32-219-cp27-none-win32.whl 

(Asegúrese de elegir el lugar para la versión correcta y valor de bits de Python).

Puede obtener la URL e instalarla a través del pip sin descargarla primero, pero hacen que sea un poco más difícil tomar la URL. Probablemente sea mejor descargarlo y alojarlo en alguna parte.

+0

upvoted. Sin embargo, tenga en cuenta que la respuesta original es de 5 años, antes de que se usara el formato .whl :) –

+0

@ CoreyGoldberg Cierto, pero incluso antes de la rueda, podría hacer algo similar con los huevos binarios: 'easy_install pywin32-216.win32-py2 .7.exe'. Las ventajas son que puedes escribir esto y que es compatible con virtualenv. Tal vez no hace 5 años, pero durante varios años (al menos 3 o 4). – jpmc26

+0

es justo ... Pero me pregunto por qué señalas los "binarios de windiows no oficiales". AFAICT, puede instalar desde el host de archivos .whl en mi respuesta original. Sin embargo, no se han actualizado para la compilación 220 (mientras que los archivos binarios en el sitio de compilación no oficial se han actualizado). Iba a actualizar mi respuesta para herramientas modernas de pip, pero quiero apuntar a una compilación recién actualizada. (FWIW No he usado Windows desde antes de que se publicara esta respuesta :) –

119

Puede instalar paquetes de ruedas pywin32 de PyPI con PIP señalando a este paquete: https://pypi.python.org/pypi/pypiwin32 No hay necesidad de preocuparse por la primera descarga del paquete, sólo tiene que utilizar PIP:

pip install pypiwin32 

Actualmente, creo que este es "el más fácil "forma de ponerse a trabajar :) Espero que esto ayude.

+2

Es bueno que se pueda instalar así. Pero intente escribir un servicio de Windows y ejecutarlo usando un entorno virtual, nada bueno hasta que haga que las DLL de 'pypiwin32_system32' sean visibles para el sistema. La ejecución de 'pywin32_postinstall.py' tampoco funcionará, ya que busca DLL en' pywin32_system32' (sin * pi * en el medio). Ir con la respuesta de @ jpmc26 funciona mejor en ese caso. Aquí hay un enlace a una pregunta no tan popular, pero muy útil sobre ese tema: http://stackoverflow.com/a/34942168/279806 – kishkin

+0

pip es la forma más fácil de instalar las bibliotecas de Python. (En cualquier plataforma) – BladeMight

+1

Doesn Parece que funciona en Python 3.6 (trabajó en 3.5) –

1

Citando el README en https://github.com/mhammond/pywin32:

Con mucho, la forma más fácil de usar pywin32 es agarrar los binarios de la most recent release

Sólo tienes que descargar el instalador para la versión de Python desde https://github.com/mhammond/pywin32/releases y correr y terminaste.

(Esto actualmente se obtiene una versión posterior de pywin32 que está disponible en el paquete de pypiwin32 pip: en el momento de la escritura, hay un instalador ejecutable para el lanzamiento 222, mientras pip sólo llega hasta construir 220.)

Cuestiones relacionadas