python-docx对Word文档的指定位置(批量)插入图片

五.python-docx向word中插入图片 Document对象有一个add_paragraph()方法插入图片,只需要传入路径或者字节流即可,实际上它也是调用段落的Run对象的add_picture() 阅读详情

python-docx对Word文档的指定位置(批量)插入图片

任务

实现自动化办公,对请假条.docx文件实现自动插入请假人签名图片。
在这里插入图片描述

技术方案

1.python-docx

python-docx是一个用于创建和更新 Microsoft Word (.docx) 文件的 Python 库。

2.Java Poi-tl

poi-tl(poi template language)是Word模板引擎,基于Microsoft Word模板和数据生成新的文档

在经过互联网一番搜索资源后,结合实用性,最终选择了***python-docx***来实现我们的任务。

实验

1.获取需要插入的位置

​ 首先我们需要分析一下Word文件。Word文件由两种类型组成,doc或docx。doc是Word 2007之前的版本,docx则是Word 2007及之后的版本。***python-docx***仅支持对docx文件的处理。

​ 如任务中需要添加请假人的手写签名。我们需要获取请假人的位置并在其后添加。在 python-docx 的官方文档我们可以找到如下提供为段落的方法。红框中所圈表示add_run()方法提供了在当前段落后追加操作。此时我们得
在这里插入图片描述
到的信息是可以通过段落对象来操作Word文档。还需要的信息是请假人位于哪个段落。文档中的段落与我们视觉上看到段落是有差别的,例如文档中的段落包含回车,每一个回车可能也算一个段落。这样我们就需要分析docx文件的构成了。

​ 早期的Word文件采用二进制存储文件形成后缀名为doc的文件。docx文件采用xml方式记录信息,由众多xml文件合成。将请假条.docx修改其后缀名为**.zip得到请假条.zip**文件。其构成如下图所示:
在这里插入图片描述
在这里插入图片描述

​ 展开word文件夹,红色方框所圈即document.xml记录文档的构成信息。将document.xml使用浏览器打开,并展开段落节点,得到如下所示:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7NENV0ky-1648211787424)(C:\Users\zhou\AppData\Roaming\Typora\typora-user-images\image-20220325193137056.png)]

p开头表示段落(paragraph),共有7个方框表示请假人字段位于第7个段落。

2.编写python代码
from docx import Document


document = Document(r"请假条.docx")
run = document.paragraphs[6].add_run()
run.add_picture(r'monty-truth.png')

document.save(r"请假条.docx")

3.实现效果
在这里插入图片描述

工具

PyCharm社区版 编译器

Anaconda 构建运行的虚拟环境

python-docx 库函数

扩展

1.本博客采用技术为无标记添加照片信息,适用于已完成的文档替换或追加信息。

2.批量处理仅需遍历文件夹即可。

3.对doc文件的处理,可将doc文件通过pywin32库转换成docx文件再进行处理。

Python-docx 读写 Word 文档:插入图片、表格,设置表格样式,章节,页眉页脚等 主要介绍 word 文档中插入图片、设置图片大小;插入表格、设置表格样式、字体样式;章节设置:页面大小、边距等;设置页眉页脚等方法。 阅读详情

相关推荐

如何在Python中将数据插入到Word模板中生成一份Word文档

在一些的项目开发中,会有一些生成Word文件的操作,比如将获取到的一些数据添加到Word模板当中的相应的位置生成一份Word文档。 由于最近的Python项目当中需要将一些从服务器查出的数据添加到Word模板当中生成一份Word文档,完成这个操作需要用到的是Python当中一个叫做docx-mailmerge的包,这个包的作用是解析MS Word docx文件,并且找到合并字段并且...

DaShu0612的博客 4万+

Python自动化办公系列-Python添加Word段落

讲解之前 首先需要知道自动化办公操作Word的一个包——python-docx 安装 pip install python-docx 使用方法 # 导入模块 from docx import Document # 创建一个文档 document = Document() # 添加段落 p = document.add_paragraph(text="段落内容", style=None) # - text:段落内容 # - style:段落样式 # - Intense Quote: Intense Q

Tanyxn的博客 1673

用Python在word的指定位置插入图片(使用Python-docx包)

通过在表格中插入图片来实现,因为表格相比于段落而言更容易定位

千行百行的博客 3万+

Python在word的指定位置插入图片

Background 关于python操作word的相关资料还是挺少的,官方文档也是没法看。自己摸索出来记录下,方便以后自己查看,也分享给大家参考哈。 这里使用的是python-docx依赖包。 老规矩,先放效果图。 原模板文档(箭头处是占位符哈) 插入图片后 1、安装依赖 pip3 install python-docx 2、完整源码 from docx import Document from docx.shared import Inches from docx.oxml.n

on the way . . . 1万+

python-docx库读写word文档

python-docx库读写word文档 一、简介 python-docx是利用python来读写word文件的第三方库。 开源地址是:https://github.com/python-openxml/python-docx 官方教程:https://python-docx.readthedocs.io/en/latest/ 安装:pip install python-docx python-docx库读写word文档主要涉及三个结构对象,层层递进。 Document:文档对象 from docx i

kingwsq的专栏 8692

python如何在docx的指定位置插入图片

通过本文,我们详细探讨了如何使用Python在.docx文件的指定位置插入图片。无论是在数据分析报告还是软件开发文档中,都提供了强大的功能来帮助你高效地完成任务。如果你对数据分析感兴趣,推荐学习CDA数据分析师课程,该课程涵盖了数据采集、数据清洗、数据分析等多个方面,帮助你全面提升数据处理能力。更多详情请访问CDA数据分析师官网。希望本文对你有所帮助,祝你在Python自动化办公的路上越走越远!

xiamu_CDA的博客 1452

python-docx 在word中指定位置插入图片或表格

docx库add_picture()方法不支持对图片位置的设置。

消极的人永远是对的,积极的人选择勇往直前 5027

fme和python-docx结合实现批量按指定位置插入图片、文本等信息

最近悟空因为项目上的需求,需要批量实现一个word邮件合并的案例,项目要求如下 1、拥有N个图斑编号命名的照片,一个含有属性信息的Excel表格,以及一个模板 当然,按照以前的思维,是可以通过word自带的邮件合并实现的,但是word自带的邮件合并扇出的时候,图片不能有效加载,需要挨个刷新才行,而且还需要另存才能把图片彻底导入到word中,无疑是非常落后的手段。然后我就把思路放在了python自带的邮件合并库mailmarge上面 这边直接上代码 但是需要提前在word中设置好域名 但是我...

weixin_57664381的博客 2730

Python 在Word文档中插入图片的3种方式(插入到段落、插入到指定位置、插入到每一页)

本文介绍了使用 Python 在 Word 文档中插入图片的三种方式,即:插入图片到段落、插入图片到文档指定位置和插入图片到文档每一页。此外还介绍了如何设置图片的大小、文字环绕方式等。包含详细的步骤介绍和代码示例。

nuclear2011的博客 3466

Python3 docxtpl 创建docx并在指定位置插入图片

前段时间在写自动化工作脚本,需要把图片插入到docx的指定位置。 网上的资料比较杂,所以写一下进行整理 1.jpg: 2.jpg: test.docx: 然后把这3个文件放在同个目录下 完整代码如下: #!/usr/bin/env python3 # -*-coding:utf-8-*- import docxtpl from docx.shared import Mm import sys # 要编辑的docx文档模板路径 docx_path = sys.path[0] + r"\test.do

大方子 1万+

python将图片批量排版插入Word文档

【代码】python将图片批量排版插入Word文档。

weixin_42636075的博客 3190

Python 操作Word文档插入图片和表格实例演示

Python 操作Word文档插入图片和表格 实例演示 ① python-docx 库安装 ② word 文档插入图片演示 ③ word 文档插入表格演示 [ 文章推荐 ] Python 地图篇 - 使用 pyecharts 绘制世界地图、中国地图、省级地图、市级地图实例详解

小蓝枣的博客 8332

Python自动化办公实战:批量在Word指定位置插入图片

简介:在自动化办公场景中,使用Python批量向Word文档的指定位置插入图片是一项高效实用的技能,广泛应用于报告生成、模板填充等任务。本文介绍如何结合和Pillow库操作Word文档与图像,通过控制段落和Run对象实现精准插入,并支持批量处理多个图片文件。教程包含完整的代码示例与最佳实践,帮助用户提升文档自动化处理效率。

weixin_35752645的博客 915

用 Python 自动生成 Word 文档并在指定位置插入图片

用Python生成Word文档 在指定位置插入图片 首先当然需要第三方库啦(▽) 天才第一步,第三方的库O(∩_∩)O哈哈~ 使用以下命令安装: pip install python-docx 那么重点来了: 使用该库的基本步骤为: 1.建立一个文档对象 2.设置文档的格式(默认字体,页面边距等) 3.在文档对象中加入段落文本,表格,图像等,并指定其样式 4.保存文档 注:本库仅支持生成Word2007以后版本的文档类型,即扩展名为.docx(ps:我用的WPS和word2019亲测也是阔以滴) 第一部分

qq_40233706的博客 1万+

使用Python对word批量插入图片

语言:python,目的:批量对文件夹中的word插入签章图片

标准高斯过程回归(Gaussian Processes Regression, GPR)从零开始,公式推导

标准高斯过程回归从零开始公式推导

qq_43587949的博客 1万+

python自动化——对word的指定位置放入图片

在word中插入N行3列的图片,并在相对的位置放入对应名称 首先是python-docx中的函数 #在word中添加指定图片 add_picture(image_path_or_stream, width=None, height=None) add_picture只能添加一行一张图片,所以没办法满足需求。然后通过面向百度编程,触类旁通,看到VBA有类似的处理方法,先在word文档中插入指定的N行3列的表格 #插入N行3列表格 doc.add_table(rows, cols, style

qq_39119949的博客 9176

若依RuoYi文件上传漏洞实战:如何安全配置/profile/upload路径(附避坑指南)

本文深入解析若依RuoYi框架中/profile/upload路径的文件上传漏洞,提供详细的安全配置方案和实战指南。通过权限修正、输入验证强化和存储隔离等多层防御策略,有效防范未授权访问和恶意文件上传风险,保障系统安全。

pink的博客 778

Python如何在Docx的指定位置插入图片?

Python的库生态非常丰富,其中不乏用于处理Word文档的库,比如。这个库可以帮助我们轻松地创建、修改.docx文件。而随着数据分析的需求越来越多,能够将分析结果直接嵌入到报告中的技能也就变得越来越重要。比如,当我们使用Python完成了数据清洗和可视化后,如何将这些精美的图表插入到Word文档中呢?这就需要用到我们在本文要讨论的技术了。

cda2024的博客 1760

Vue3 - 完美解决高德地图定位失败 Get ipLocation failed.Geolocation permission denied.(获取ipLocation失败。地理定位权限被拒绝。)

Get ipLocation failed.Geolocation permission denied.,vue3引入高德地图当前定位失败 ,vue3中使用高德地图定位报错,高德地图API用户定位失败,高德地图H5 定位失败报错排查和解决方案,微信公众号H5网页高德地图定位报错,谷歌浏览器-高德地图定位失败geolocation,getCurrentPosition 返回的 message报错,如何解决此问题,uniapp h5高德地图,微信、QQ等内置浏览器定位失败,高德地图实现实时用户位置定位,引入高德

🏆 前端领域优质创作者 4169

指纹浏览器降维打击(下):Cloudflare Turnstile 与 hCaptcha 的底层交互逻辑

本文将深度拆解:Turnstile 与 hCaptcha 的 Iframe 沙箱通信机制,动态混淆 JS 与 PoW(工作量证明)的物理破解法则,以及如何通过 C++ 底层事件合成与环境基因强绑定,实现验证码的“无感过验”。

数据知道的博客 419

谈一下关于python-docx指定位置插入图片的故事

word段落中插入图片

qq_31532485的博客 2494

第110章 PCL PointCloudFusing 点云融合重建详细讲解

点云融合是指将多个不同视角、不同位置、不同传感器获取的点云数据进行合并,得到一个更加完整、准确的三维模型。多视角扫描:从多个相机或传感器获取点云数据,需要将这些数据融合成一个统一的三维模型。传感器融合:例如将激光雷达(LiDAR)点云与相机的图像数据融合,以便获得更高质量的三维重建。动态场景重建:动态环境中的物体,点云数据不断更新,如何平滑地融合这些点云是一个重要课题。点云融合的目标是将不同来源的点云数据准确地合并,消除冗余,减少噪声,并提高整体的点云密度和精度。

yumeiguo的博客 501
上一篇: 最小二乘法拟合y=ax+b 线性函数
ZYF__2015
博客等级 码龄11年 3粉丝 11原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值