Python 3.4中的Win32Com.Client错误
我正在使用Python 3.4和pywin32-219。我想用win32com.client这个模块,但遇到了以下错误。你们有什么建议可以让我使用win32com.client吗?其他的win32com._导入都没问题。(我想用这个来创建MS Excel中的文档和图表)
import win32com
>>> win32com.client
Traceback (most recent call last):
File "<pyshell#1>", line 1, in <module>
win32com.client
AttributeError: 'module' object has no attribute 'client'
>>> import win32com.client
Traceback (most recent call last):
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 56, in __init__
_LoadDicts()
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 106, in _LoadDicts
f = open(os.path.join(win32com.__gen_path__, "dicts.dat"), "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'C:\\Program Files (x86)\\python\\lib\\site-packages\\win32com\\gen_py\\dicts.dat'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 139, in GetGeneratePath
os.stat(fname)
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'C:\\Program Files (x86)\\python\\lib\\site-packages\\win32com\\gen_py\\__init__.py'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
import win32com.client
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\__init__.py", line 11, in <module>
from . import gencache
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 662, in <module>
__init__()
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 58, in __init__
Rebuild()
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 649, in Rebuild
_SaveDicts()
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 65, in _SaveDicts
f = open(os.path.join(GetGeneratePath(), "dicts.dat"), "wb")
File "C:\Program Files (x86)\python\lib\site-packages\win32com\client\gencache.py", line 141, in GetGeneratePath
f = open(fname,"w")
PermissionError: [Errno 13] Permission denied: 'C:\\Program Files (x86)\\python\\lib\\site-packages\\win32com\\gen_py\\__init__.py'
2 个回答
0
我通过重新安装adodbapi解决了这个问题(我用的是Python 3.4.1和Win7 x64上的Pywin32构建219):
py -3 -m pip install adodbapi
0
确保你已经正确安装了 Python-3.4.1 和 pywin32 Build 219(如果有需要,可以重新安装)。注意选择64位或32位的安装包,两个软件的位数要一致(当然也要和你的操作系统兼容),这可能是你遇到问题的原因之一。
你是你电脑的管理员吗?你有没有检查过对 C:\Program Files (x86)\python\lib\site-packages\win32com 的写入权限?(正如 @Schollii 所说)如果没有,试着成为管理员,这也是可能出错的地方。
你应该在帖子中添加你的Windows版本(比如Windows 7、8、XP、Vista等),关于如何成为管理员的步骤可以参考以下链接 => Windows 7 和 Windows 8,还有 Windows XP。
如果以上都做了,问题还是没解决,试试以下方法(在我的Windows 7 64位上有效)。去这个路径:C:\Python34\Lib\site-packages\win32,把这里的所有 .pyd 文件复制到 C:\Python34。
希望这能帮到你,
祝好,