我正在尝试安装 win32com 模块。我知道我应该下载适用于 Windows 的 Python 扩展,但它不起作用。
在安装了适用于 Windows 的 Python 并尝试后import win32com.client
,我收到以下错误消息:
>>> import win32com.client
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
import win32com.client
File "C:\Python27\lib\site-packages\win32com\__init__.py", line 5, in <module>
import win32api, sys, os
ImportError: No module named win32api
尝试通过 Google 寻找如何为 Python 安装 win32api 的帮助也无济于事;我只是再次参考了 Python for Windows 扩展。
答案1
以管理员权限启动命令行。
python -m pip install pywin32
C:\Program Files\Stackless36\Scripts>python pywin32_postinstall.py -install
该路径C:\Program Files\Stackless36\
应替换为安装 Python 版本的路径。测试(管理员权限可选)使用
python -c "import win32com"
或python speak.py
由
speak.py
以下文本组成:import win32com.client speaker = win32com.client.Dispatch("SAPI.SpVoice") speaker.Speak("It works. Hoorah!")
在 Win32 上的 Python 3.6.4 Stackless 3.1b3 060516 (v3.6.4-slp:9557b2e530,2017 年 12 月 21 日,15:23:10) [MSC v.1900 64 位 (AMD64)] 上运行良好。Vanilla CPython 在此处挂起:
C:\Users\C\AppData\Local\Programs\Python\Python36-32>python.exe
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 16:07:46) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import win32com.client
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'win32com'
>>> exit()
C:\Users\C\AppData\Local\Programs\Python\Python36-32>python.exe -m pip install pywin32
Collecting pywin32
Cache entry deserialization failed, entry ignored
Downloading https://files.pythonhosted.org/packages/d4/2d/b927e61c4a2b0aaaab72c8cb97cf748c319c399d804293164b0c43380d5f/pywin32-223-cp36-cp36m-win32.whl (8.3MB)
100% |████████████████████████████████| 8.3MB 50kB/s
Installing collected packages: pywin32
Successfully installed pywin32-223
You are using pip version 9.0.3, however version 10.0.1 is available.
You should consider upgrading via the 'python -m pip install --upgrade pip' command.
答案2
检查 sys.path 以确保安装模块的目录在那里,否则您必须添加它(谷歌 PYTHONPATH 窗口以获取一些帮助。)
答案3
我昨天也遇到了同样的问题。我pypiwin32
使用进行安装pip
。
尝试
>>pip install -U pypiwin32
在命令提示符下
确保您的 Python 包位于系统 PATH 中。
请注意,安装 Python 模块有几种不同的方法,但正如您所发现的,并不是所有的方法都有效。对于我来说,使用模块(包含)pip install
是可行的。-U
pypiwin32
win32com
答案4
在您的计算机中搜索“win32api”来查找该文件,找到后将其放在此处 C:\Python26\Lib\win32com “假设您已经安装了 win32com 库,您会在“C:\Python26\Lib\site-packages\win32”中找到该文件,我认为“毕竟,该文件应该位于您计算机中的这两个位置,您的模块才能正常工作,就这样”。