私はWindows 7でpython 3.4を使用しています。ドキュメントファイルを開くには、このコードを使用しています
import sys
import win32com.client as win32
Word = win32.Dispatch("Word.Application")
Word.Visible = 0
Word.Documents.Open("MyDocument")
doc = Word.ActiveDocument
このエラーが毎回ポップアップするのはなぜかわからない
ImportError:win32apiというモジュールはありません
http://www.lfd.uci.edu/~gohlke/pythonlibs/#pywin32 からpywin32をインストールしましたが、インポートする場所からのパスもチェックしました... pywin32も再インストールしますが、エラーは削除されません.....
任意の提案....助けてください
ありがとう
ここからpywin32をインストールしてみてください:
http://sourceforge.net/projects/pywin32/files/pywin32/
オペレーティングシステムと、使用しているpythonバージョンに依存します。通常、32ビットバージョンは32ビットOSと64ビットOSの両方で動作します。
これはライブラリ自体のバグです。おそらく、これを作成するために異なるpython実装を使用しました。
インポートしようとしているのはsite-packages\win32\win32api.pydファイルですが、win32フォルダーは、python検索するパスですが、site-packagesはあります。
import win32api
(win32com\__ init__.py内)からfrom win32 import win32api
昨日、Windows 7でPython 3.6.1で同じエラーが発生し、「pip install pypiwin32」で解決しました。
Win32com.clientをインポートしようとして同じエラーが発生しました(Python 2.7、64ビット)を使用します。 TulkinRB に同意しますが、パスの問題があるようですが、 win32をインポートすることもできなかったため、提案された修正は機能しませんでした。
おそらく私の修正はPython 3.4。
最終的に、管理者として SourceForge から.exeをインストールすると( Rina Rivera の答え ここ で示唆されているように)win32com.clientをインポートできましたIDLEからですが、notは、元々実行しようとしていたスクリプトを実行したときに。
最終的に、管理者としてインストールしてIDLEを開いたときに拡張されたsys.pathの3つの違いを発見しましたが、スクリプトの実行時には適用されませんでした。スクリプトでsys.pathを拡張することで、実行時にインポートエラーを取り除くことができました。
import sys
sys.path.extend(('C:\\Python27\\lib\\site-packages\\win32', 'C:\\Python27\\lib\\site-packages\\win32\\lib', 'C:\\Python27\\lib\\site-packages\\Pythonwin'))
最後に、一時的な修正以上のものが必要な場合は、IDLESTARTUP変数またはPYTHONSTARTUP変数を設定してsys.pathを永続的に拡張できます( here および here で説明)。
init.pyファイルをwin32フォルダー内に作成してから、win32comフォルダー内に移動し、__ init。pyファイルを変更して、win32apiをインポートし、win32apiからwin32apiに変更できます。
最終的にデバッグを行い、必要なファイルを適切なフォルダーにコピーして貼り付けました。バグが修正されるまでは回避策ですが、動作します。