2014-04-29 3 views
2

Я следовал инструкциям, чтобы загрузить WMI для Python здесьPython ImportError: модуль не назвал WMI

http://timgolden.me.uk/python/wmi/index.html

При попытке запустить код

import wmi 

c = wmi.WMI() 
for s in c.Win32_Service (StartMode="Auto", State="Stopped"): 
    if raw_input ("Restart %s? " % s.Caption).upper() == "Y": 
    s.StartService() 

Я получаю ошибку

Traceback (most recent call last): 
    File ".\see_wmi.py", line 1, in <module> 
    import wmi 
ImportError: No module named wmi 

EDIT:

Я использую Python 2.7.6

EDIT2:

Я бегу 64-разрядной Windows 2008 R2, и я скачал WMI-1.4.9.zip (md5) от https://pypi.python.org/pypi/WMI/. Я извлек содержимое и сохранил его в D: \ Python \ Tools \ Scripts. Я выполнил

python setup.py.install 

Я добавил D: \ Python \ Tools \ Scripts в% PATH%, и когда я выполняю код

import wmi 

c = wmi.WMI() 
for s in c.Win32_Service (StartMode="Auto", State="Stopped"): 
    if raw_input ("Restart %s? " % s.Caption).upper() == "Y": 
    s.StartService() 

Я получаю ошибку

Traceback (most recent call last): 
    File ".\see_wmi.py", line 1, in <module> 
    import wmi 
    File "D:\Python\lib\site-packages\wmi.py", line 88, in <module> 
    from win32com.client import GetObject, Dispatch 
ImportError: No module named win32com.client 

EDIT3:

У меня теперь есть Python 2.7.6, а установка D: \ Python27

Я извлек WMI-1.4.9.zip ре диска и выполняется следующий

PS D:\WMI-1.4.9> python .\setup.py install 

И выход

running install 
running build 
running build_py 
creating build 
creating build\lib 
copying wmi.py -> build\lib 
running build_scripts 
creating build\scripts-2.7 
copying wmitest.py -> build\scripts-2.7 
copying wmiweb.py -> build\scripts-2.7 
copying wmitest.cmd -> build\scripts-2.7 
copying wmitest.master.ini -> build\scripts-2.7 
running install_lib 
copying build\lib\wmi.py -> D:\Python27\Lib\site-packages 
byte-compiling D:\Python27\Lib\site-packages\wmi.py to wmi.pyc 
running install_scripts 
creating D:\Python27\Scripts 
copying build\scripts-2.7\wmitest.cmd -> D:\Python27\Scripts 
copying build\scripts-2.7\wmitest.master.ini -> D:\Python27\Scripts 
copying build\scripts-2.7\wmitest.py -> D:\Python27\Scripts 
copying build\scripts-2.7\wmiweb.py -> D:\Python27\Scripts 
running install_data 
warning: install_data: setup script did not provide a directory for 'readme.txt' -- installing right in 'D:\Python27' 

running install_egg_info 
Writing D:\Python27\Lib\site-packages\WMI-1.4.9-py2.7.egg-info 

Но когда я исполняю свой исходный код, я получаю ту же ошибку

PS D:\SymantecDLP\Protect> python .\see_wmi.py 
Traceback (most recent call last): 
    File ".\see_wmi.py", line 1, in <module> 
    import wmi 
    File "D:\Python27\lib\site-packages\wmi.py", line 88, in <module> 
    from win32com.client import GetObject, Dispatch 
ImportError: No module named win32com.client 

EDIT4:

И я включил следующее % PATH%

D:\Python27;D:\Python27\Lib\;D:\Python27\Lib\site-packages 
+0

https://pypi.python.org/pypi/WMI/ Вы загрузили wmi отсюда? –

+0

@BenjiSparks - да, я скачал оттуда – Glowie

ответ

5

Я понял.

мне нужно установить Python для расширений Windows, расположенных на http://sourceforge.net/projects/pywin32/files/

Поскольку я использую Python 2.7.6 на 64-разрядном сервере я установил pywin32-218. win-amd64-py2.7.exe

+0

Я использую 64-битные окна 7, но 32-разрядный python 2.7, поэтому я использовал pywin32-220.win32-py2.7.exe –

1

Одна вещь, которую я нашел это:

Если вы используете Python 2, вы должны использовать

python setup.py install 

, который будет работать на Python 2, но не 3. В этом случае вам необходимо использовать

python3 setup.py install 
+0

Я использую Python 2.7.5 – Glowie

+0

@Glowie Единственное, что я мог бы предложить, это попытаться переустановить его. –

+0

Я переустановил его и все еще не работает. Я включил детали в мой исходный вопрос – Glowie

Смежные вопросы