Python3.4でpywin32が動かなかったこと2014年04月08日 19:55

Python3.4が正式リリースされていたのでインストールしてみました。Python Japanのダウンロードサイト(http://www.python.jp/download/)にも「特別な理由のない限り、最新版の利用をお勧めします。」って書いてありますから。

Windowsで使う場合はPywin32があると何かと便利なので、pywin32をインストールしました。そして試しにインポートしてみると、

>>> import win32com.client
ImportError: DLL load failed: The specified module could not be found.

インポートできない!
http://sourceforge.net/projects/pywin32/files/pywin32/から貰ってきたpywin32-218.win32-py3.4.exeを実行しただけなので、私がインストールを間違えたとは思えない。念のためC:\Python34にあるpywin32-wininst.logを眺めてみるが正常にインストールしているように見える。
やはり困ったときはグーグル先生に聞い尋ねてみよう。'python' '3.4' 'pywin32'で検索!!

ありました。
win32 import error python 3.4 (http://stackoverflow.com/questions/22490233/win32com-import-error-python-3-4)
あっさりと答が見つかるってことは、結構良く知られた話なのかも。
その答は、After I copied pywintypes26.dll and pythoncom26.dll to c:\Python26\Lib\site-packages\win32 I solved the problem!
なんでPython2.6が出てくるの?と思ったが、投稿されたAnswerを辿っていくと、Python2.6のときに同じ問題が発生したから26を34に置き替えて対処すべしということらしい。
早速、C:\Python34\Lib\site-packages\pywin32_system32\pythoncom34.dll,pywintypes34.dllを、C:\Python34\Lib\site-packages\win32にコピーしてみる。

>>> import win32com.client
>>>

無事インポートできました。