3

pywin32 を使用して Word ファイルを開くことができません。pywin32 のチュートリアルを探していますが、どのコードも機能しません。word ドキュメントの場所は C:\Users\User\Documents\python progs\misc\formatting です。

import win32com.client as win32

word = win32.gencache.EnsureDispatch('Word.Application')
word.Visible = False
word.Documents.Open('C:\\sectarianism.doc')


Traceback (most recent call last):
  File "C:\Users\User\Documents\python progs\misc\formatting for isn\formatting.py", line 5, in <module>
    word.Documents.Open('C:\\sectarianism.doc')
  File "C:\Python25\lib\site-packages\win32com\gen_py\00020905-0000-0000-C000-000000000046x0x8x4\Documents.py", line 96, in Open
    , Visible, OpenAndRepair, DocumentDirection, NoEncodingDialog, XMLTransform
com_error: (-2147352567, 'Exception occurred.', (0, u'Microsoft Word', u'This file could not be found.\r (C:\\sectarianism.doc)', u'C:\\Program Files\\Microsoft Office\\Office12\\1033\\WDMAIN11.CHM', 24654, -2146823114), None)
>>> 
4

4 に答える 4

10

正しい場所からファイルを開く必要があります。

あなたはこれを試すかもしれません:

import win32com.client as win32
import os

word = win32.gencache.EnsureDispatch('Word.Application')
word.Visible = False
doc_path = os.path.join('c:', os.sep, 'Users', 'User', 'Documents', 'python', 'progs', 'misc', 'formatting for isn', 'sectarianism.doc')
doc = word.Documents.Open(doc_path)

もちろん、doc.Close() でドキュメントを閉じ、後で Word.Quit() で Word を終了することを忘れないでください。

于 2013-05-17T19:35:48.207 に答える
1

この方法をお勧めします:

>>> import win32api
>>> win32api.ShellExecute(0, 'open', 'D:\\test.docx', '', '', 1)

これにより、既定のプログラム (Microsoft Word など) でファイル (.docx またはその他の種類) が開きます。

于 2013-05-25T07:56:58.670 に答える