本篇文章内容为使用python 读取word文档和创建word文档
读取doc文件
引入类库
示例如下:
import win32com
import win32com.client
import os
读取doc文件
通过得到的doc文件路径调用系统word功能。
打开文件获取其中的文本信息,输出文本信息,最后关闭文件。
示例如下:
def read_word(path):# 调用系统word功能,可以处理doc和docx两种文件mw = win32com.client.Dispatch('Word.Application')# 打开文件doc = mw.Documents.Open(path)for paragraph in doc.Paragraphs:line = paragraph.Range.Textprint(line)# 关闭文件doc.Close()# 退出wordmw.Quit()
调用读取
创建一个测试文件输入一点内容,放置文件到当前文件夹下,调用上方的函数。
示例如下:
path = os.path.join(os.getcwd(), './测试文件.doc')
read_word(path)
效果如下:
读取文件并存储
读取word文件并存储到其他文件。
引入类库
示例如下:
import win32com
import win32com.client
import os
读取并存储
读取word doc文件中的文本内容,存储到txt文件中。
示例如下:
def read_word_to_other(path, toPath):mw = win32com.client.Dispatch('Word.Application')# 打开文件doc = mw.Documents.Open(path)# 将word数据保存到另一个文件doc.SaveAs(toPath, 2) # 2表示为txt文件doc.Close()mw.Quit()path = os.path.join(os.getcwd(), './测试文件.doc')
toPath = os.path.join(os.getcwd(), './测试文件.txt')
read_word_to_other(path, toPath)
执行后在当前目录下创建出‘测试文件.txt’
效果如下:
创建word文件
封装一个创建word文件的函数,并通过循环调用。
示例如下:
import win32com
import win32com.client
import osdef create_word(path):word = win32com.client.Dispatch('Word.Application')# 文档可见word.Visible = True# 创建文档doc = word.Documents.Add()# 从头开始写内容word_r = doc.Range(0, 0)word_r.InsertAfter('你好,' + name + "\n")word_r.InsertAfter(' 好久不见,你过的好吗。。。。。。')# 存储文件doc.SaveAs(path)doc.Close()word.Quit()names = ['黄伟杰', '黄小优', '于健康']
for name in names:path = os.path.join(os.getcwd(), name)create_word(path)
执行结果:
总结
本篇文章内容为使用python 读取word文档和创建word文档