python读doc文档-win32com

本文介绍了如何通过win32com模块在Python中读取.doc和.docx文档,以及如何将.doc转换为.docx。首先,详细说明了安装pywin32的方法,然后展示了读取doc文档的代码示例,并打印出每个段落。最后,给出了将.doc文件转换为.docx文件的代码。在处理过程中,注意后台运行和关闭警告的设置。
摘要由CSDN通过智能技术生成

上一篇提到用python-docx读写.docx文章,但该模块并不能读取.doc文档,这里使用win32com模块,更高级,可以操作word,excel等office文档

一、安装

方法一:官网下载对应python版本的安装程序,网址为:https://sourceforge.net/projects/pywin32/files/pywin32/,下载完成后,双击安装即可

方法二:

pip install pywin32

二、填坑,使用报错:

AttributeError: module 'win32com' has no attribute 'client'

解决:改变导包方式 from win32com import client后可正常执行

三、读取doc/docx文档

from win32com.client import Dispatch
word = Dispatch('Word.Application')  # 打开word应用程序
# word = DispatchEx('Word.Application') # 启动独立的进程
word.Visible = 0  # 后台运行,不显示
word.DisplayAlerts = 0  # 不警告

path = r'D:\test\1.doc' # 'D:\test\1.docx'
doc = word.Documents.Open(FileName=path, Encoding='gbk')

for para in doc.paragraphs:
    print(para)

doc.Close()
word.Quit()

1.doc的文档内容如下:

输出结果如下:

四、将.doc转换成.docx文件

from win32com.client import Dispatch

word = Dispatch('Word.Application')  # 打开word应用程序
# word = DispatchEx('Word.Application') # 启动独立的进程
word.Visible = 0  # 后台运行,不显示
word.DisplayAlerts = 0  # 不警告

doc = word.Documents.Open(r'D:\test\1.doc')
doc.SaveAs(r"D:\test\2.docx", 12)  # 另存为后缀为".docx"的文件,其中参数12指doc文件
doc.Close()
word.Quit()

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值