问答详情
源自:2-3 抽取word文档文本内容

win7+python3.7条件下的代码输出不了,求哥哥姐姐指导

from win32com import client as wc

from win32com.client import Dispatch

import os,fnmatch


def wordtxt(filepath):

dirs,filename=os.path.split(filepath)


newname=''

if fnmatch.fnmatch(filename,'*.doc'):

newname=filename[:-4]+'.txt'

elif fnmatch.fnmatch(filename,'*.docx'):

newname=filename[:-5]+'.txt'

else:

print('文件格式不符合')

return


savepath=os.path.join('D:/数据处理文档',newname)

wordapp=wc.Dispatch('Word.Application')

mytxt=wordapp.Documents.Open(filepath)


mytxt.SaveAs(savepath,4)

mytxt.close()


if __name__=='__main__':

filepath=os.path.abspath ('C:/Users/Administrator/Desktop/行程.docx')

wordtxt(filepath)


提问者:ryan梁浩楠 2019-10-04 14:56

个回答

  • qq_慕移动8430113
    2020-02-20 22:30:42

    import os,fnmatch

    from win32com import client as wc

    from win32com.client import Dispatch


    def wordtxt(filepath):

        dirs,filename=os.path.split(filepath)

        newname=''

        if fnmatch.fnmatch(filename,'*.doc'):

            newname=filename[:-4]+'.txt'

        elif fnmatch.fnmatch(filename,'*.docx'):

            newname=filename[:-5]+'.txt'

        else:

            print('文件格式不符合')

            return

        savepath=os.path.join(r'D:\数据处理文档\',newname)

        wordapp=wc.Dispatch('Word.Application')

        mytxt=wordapp.Documents.Open(filepath)

        mytxt.SaveAs(savepath,4)

        mytxt.close()

    if __name__=='__main__':

        filepath=os.path.abspath (r'C:/Users/Administrator/Desktop/行程.docx')

        wordtxt(filepath)