[Python进阶] Python操作word:win32com、python-docx

这篇具有很好参考价值的文章主要介绍了[Python进阶] Python操作word:win32com、python-docx。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

7.5 Python操作word:win32com、python-docx

7.5.1 通过win32com操作

7.5.1.1 新建word并写入内容
from win32com import client


def CreateWord(pmFilename, pmData):
    word = client.Dispatch("Word.Application")  # 打开word应用程序
    word.Visible = True  # 让文档可见
    doc = word.Documents.Add()  # 创建文档
    r = doc.Range(0, 0)  # 写内容,从头开始
    r.InsertAfter(pmData)  # 插入内容
    doc.SaveAs(pmFilename)  # 存储文件
    doc.Close()  # 关闭文件
    word.Quit()  # 退出word


CreateWord(pmFilename='test.docx', pmData='我是一只小小鸟')
7.5.1.2 读取word
from win32com import client


def ReadWord(pmFilename):
    lines = []
    word = client.Dispatch("Word.Application")  # 调用系统word功能,可以处理doc和docx文件
    # 打开文件
    doc = word.Documents.Open(pmFilename)
    for par in doc.Paragraphs:
        line = par.Range.Text
        lines.append(line)
    doc.Close()  # 关闭
    word.Quit()  # 退出word
    return '\n'.join(lines)


print(ReadWord(r'E:\Home\Document\test.docx'))

离离原上草,岁晚霜霰滋。
与子为兄弟,生世逢乱离。
漂荡各分散,生死安得知。
乐土叹无食,南州叹无衣。
良时幸休明,天路开清夷。

翩翩两鸿鹄,振翼思奋飞。
一留故山树,一望云中涯。
东西各异势,顾影相徘徊。
远道去茫茫,会合未有期。
吞声念同气,泪落不敢挥。

7.5.2 通过Python-docx操作

7.5.2.1 Python-docx库介绍

python-docx是一个Python库,用于在Microsoft Word(.docx)文件中创建、修改和解析。这个库非常有用,因为它能够让我们使用Python编程语言来处理Word文档,从而自动化一些繁琐的任务。
下面是一些python-docx库的主要功能:
文档创建:你可以使用python-docx来创建一个新的Word文档。
文档解析:你可以使用python-docx来读取和解析现有的Word文档。这意味着你可以使用Python来提取Word文档中的内容。
文档编辑:一旦你解析了一个Word文档,你可以使用Python来编辑它。例如,你可以添加新的段落、表格、图片等,也可以修改现有的内容。
样式和格式:python-docx允许你设置和修改文档的样式和格式,如字体、颜色、大小、对齐方式等。
插入和编辑表格:你可以使用python-docx来插入新的表格到Word文档中,也可以修改现有的表格。
插入和编辑图片:你可以使用python-docx来插入新的图片到Word文档中,也可以修改现有的图片。
插入和编辑超链接:你可以使用python-docx来插入新的超链接到Word文档中,也可以修改现有的超链接。
页眉和页脚:你可以使用python-docx来设置文档的页眉和页脚。
水印:你可以使用python-docx来给文档添加水印。
合并文档:你可以使用python-docx来合并多个Word文档。
官方文档:https://python-docx.readthedocs.io/en/latest/
安装Python-docx

pip install python-docx

7.5.2.2 新建word并填充内容
from docx import Document
from docx.shared import Inches

# 创建一个新的Word文档对象
doc = Document()
# 添加一个标题
doc.add_heading('My Document', 0)
# 添加一个段落
doc.add_paragraph('This is my first paragraph.')
# 添加一张图片
doc.add_picture('path_to_image.jpg', width=Inches(1.25))
# 保存文档
doc.save('my_document.docx')
7.5.2.3 读取word
from docx import Document


def ReadWord(pmFilename):
    lines = []
    file = Document(pmFilename)
    for line in file.paragraphs:
        lines.append(line.text)
    return '\n'.join(lines)


print(ReadWord(r'E:\Home\Document\test.docx'))

离离原上草,岁晚霜霰滋。
与子为兄弟,生世逢乱离。
漂荡各分散,生死安得知。
乐土叹无食,南州叹无衣。
良时幸休明,天路开清夷。文章来源地址https://www.toymoban.com/news/detail-782619.html

到了这里,关于[Python进阶] Python操作word:win32com、python-docx的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Python 读取 Word 详解(python-docx)

    效果图:

    2024年02月06日
    浏览(38)
  • 使用Python的win32com库实现对Word的操作

    win32com库是Python中的一个扩展库,它提供了与Microsoft Office应用程序进行交互的功能。在本篇博客中,我们将重点介绍如何使用win32com库来操作Word文档。使用win32com库可以方便地打开、创建、保存和编辑Word文档,以及进行格式化和布局等操作。 要使用win32com库,首先需要安装它

    2024年02月06日
    浏览(33)
  • Python系列之Python-docx生成运行日报Word模板

    因项目需求需要自动生成运行日报,想到使用Python脚本自动生成Word运行模板,接口数据访问elasticsearch获取,获取到的数据再使用pyechart生成图表展示在Word模板中。本文主要介绍python几种工具的安装部署,包括python-docx、elasticsearch和pyechart环境。 1、安装python-docx 1)官方文档

    2023年04月16日
    浏览(36)
  • python-docx把dataframe表格添加到word文件中

    python-docx把dataframe表格添加到word文件中思路较为简单: 先把 dataframe 格式转变为 table 新建一个段落: document.add_paragraph() 把 table 添加到这个段落下方 上述代码会得到如下效果图:

    2024年02月11日
    浏览(34)
  • 「第四章」python-docx 为word添加表格、设置表格边框

    第三章中,我们讲解了如何在利用 add_heading 在 docx 文档中花式添加标题,这一节,我们来一起玩一下 docx 中的 table ,也就是表格,表格部分的内容还蛮多的,我们这一章不一定讲得完,能嘚吧多少算多少,今天刚好有时间,多更新一些哇。🎃 🧡 导入 docx 库 🧡 创建 docum

    2024年02月02日
    浏览(54)
  • 「第三章」python-docx 添加标题,word标题从入门到精通

    💡 1. add_heading() 简介 💡 2. add_heading() 基本用法 💡 3. 设置不同级别的标题 💡 4. 设置带有特殊字符的标题 💡 5. 使用循环添加多个标题 💡 6. 使用不同样式添加标题 💡 7. 结合其他元素使用标题 💡 8. 为标题设置复杂多变的样式 最近一段时间,一直在更新python关于PDF文档、

    2024年02月02日
    浏览(41)
  • python-docx:将excel爬取题库转化为word格式便于浏览

    POE的GPT4.0错误太多难以吐槽。 似乎段落和运行的删除一直是失败的,所以在第一次添加的时候设置好所有格式 大纲等级设置失败了

    2024年02月12日
    浏览(85)
  • 【python-docx】文本操作(段落、run、标题、首行缩进、段前段后、多倍行距、对齐方式)

    1.概念 块级元素(block-level) 是指作为一个整体的元素,典型的是段落(paragraph)。 行内元素(inline) ,你可以把它理解为一部分块级元素,即一个块级元素包含一个或多个行内元素,典型的是run对象(我也不知道run应该翻译成什么)。 举个例子,你在Word回车换行开始输入

    2024年02月11日
    浏览(45)
  • python word中插入excel文件以图标显示(win32com调用vba代码)

    参考文章:(5条消息) python extension(pywin32) 插入宏到word_hit_liuanhuaming的专栏-CSDN博客   功能需求:在C:UsersuserDesktop20210408-1xxx.docx中插入xxx.xlsx文件以图标显示,如下图:   1.准备: 1)python模块安装: 2)word启用宏功能: 文件-选项 信任中心-信任中心设置 勾选信任对VBA工程对象模型

    2023年04月08日
    浏览(35)
  • Python 基于win32com客户端实现Excel操作

    Python 3.6.2 新建并保存EXCEL 了解更多API,可以查看参考连接 读取现有EXCEL 说明: 如果不添加以下代码行: 会报错,如下: 建议使用 替代 实践发现,多线程的情况下,使用 Dispatch 会出现报错,原因似乎是 Dispatch 若发现进程已经存在的话,就不会创建新的进程。若不创建新的

    2024年02月01日
    浏览(89)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包