Python办公自动化 | 从PPT到Word

Python : 一文学会办公自动化(Word、Excel、PPT) 自动化: 1946年提出,被运用于军事等方面。 办公自动化指的是现在办公和计算机技术结合起来的新型的办公的方式。 “高效的工作”正是自动化解决的问题/ 办公自动化的分类: 操作Excel: 就业数据分析等 操作Word: 考试系统生成Word试卷等 操作PPT : 用户画像分析等 使用的模块: xlrd模块 xlwt模块 smtplib模块 pywin32模块 python-ppt模块 python-docx模块 pymysql模块 xlsxwriter模块 1. xlrd模块 阅读详情

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料、代码以及交流解答点击即可加入


大家好,又到了Python办公自动化系列。

在之前的自动化系列文章中,我们分别讲过如何使用Python将Word中表格信息批量提取至Excel和多个Excel表格汇总至Word,今天继续讲解如何将文字从PPT中提取出来并写入Word,主要将涉及如何使用python-pptx和python-docx交互操作word和ppt文件!

本文依旧来源于真实的办公自动化需求!

一、需求说明

 

有一份如图所示的ppt,包含了Python的介绍。现在需要将PPT中的文字都提取出来并写入Word中,如下图

 

二、涉及知识

代码实际上非常简单,基于python-pptx和python-docx两个模块即可,核心代码只有6行。但需要先熟悉PPT和Word两种文件的格式,可通过下面的图解对Word结构有个直观认识

 

 

不考虑表格图片等情况,一个纯文字组成的Word文档由文档document-段落paragraph-文字块run三级结构组成。再看一下ppt结构组成,会较Word复杂许多。当然这也跟PPT的高度自定义拓展性有关

 


简单来说,一个PPT文件为presentation,基本的结构为展示文件presentation-幻灯片页slide-形状shape组成,形状就需要区分开,是包含文本的形状还是不包含文本的形状(纯图片等)。如果是包含文本的形状,则可以获取内部的文本框,一个文本框又可以看作是一个小的word文档,包含段落paragraph-文字块run

有了以上的知识铺垫就可以写代码了。

三、Python实现

首先导入需要的模块


from pptx import Presentation
from docx import Document****

需要注意的是,安装的时候是python-docx和python-pptx,但实际运用都是pptx和docx。两个模块的相似点如下:

  • 安装名和导入名不同
  • 安装名为 python-新版本后缀名,导入名为新版本后缀名

现在导入pptx文件,创建Word文件

wordfile = Document()
# 给定ppt文件所在的路径
filepath = r'xxxxxxxx'
pptx = Presentation(filepath)

接着遍历ppt,将文字写入word

# 遍历ppt文件的所有幻灯片页
for slide in pptx.slides:
    # 遍历幻灯片页的所有形状
    for shape in slide.shapes:
    # 判断形状是否含有文本框,如果含有则顺序运行代码
        if shape.has_text_frame:
            # 获取文本框  
            text_frame = shape.text_frame
            # 遍历文本框中的所有段落
            for paragraph in text_frame.paragraphs:
                # 将文本框中的段落文字写入word中
                wordfile.add_paragraph(paragraph.text)

遍历ppt到段落就写入Word,而非遍历到底直到文字块才写入,因为段落更符合阅读习惯,一般遍历到文字块是需要对特定的字段词块进行操作才进行,最后记得保存Word文件

save_path = r'xxxxxxxx'
wordfile.save(save_path)

小结

这是经过一定改编的真实案例,可见Python自动化办公确实能够帮助我们解放自己的双手,不过在写自动化脚本之前也要掌握原理,明确思路再进行!如果对本文的代码和数据感兴趣可以在后台回复自动化获取,最后还是希望大家能够理解Python办公自动化的一个核心就是批量操作-解放双手,让复杂的工作自动化!

Python 100天,从新手到大师——Python操作Word和PowerPoint:办公自动化实战(day26) 摘要: 本文介绍了使用Python自动化处理Word和PowerPoint文档的方法。通过python-docx库可创建和修改Word文档,包括添加标题、段落、列表、图片和表格,并演示了批量生成离职证明的实战案例。python-pptx库则用于操作PowerPoint,支持创建演示文稿、添加幻灯片、设置文本样式和插入图表等。这些工具能显著提升办公效率,适用于报告生成、合同处理等重复性文档工作场景。 阅读详情

相关推荐

Python 自动化办公:Excel、Word、PPT 批量处理

通过 Python 的强大功能,我们可以轻松实现对 Excel、Word 和 PowerPoint 文件的批量处理。无论是数据合并、条件筛选还是内容修改,都可以借助合适的库高效完成。这不仅节省了时间,还减少了人为错误的发生。希望本文能帮助你更好地掌握 Python 在办公自动化中的应用。```

khfiuha8782的博客 508

python实现ppt内容输出为word形式

【代码】python实现ppt内容输出为word形式。

rubyw的博客 691

python自动化:批量自动将PPT中的内容复制到word中(附完整源码)

python自动化:批量自动将PPT中的内容复制到word中(附完整源码)

希望我的博客,能帮上你解决学习中工作中所遇到的问题 561

使用Python 完成 ppt转为word

【代码】使用Python 完成 ppt转为word。

termiliter的博客 859

全网最全!!全都有~ Python办公自动化之Word、Excel、PPT 系列教程

课程大纲 第二章 Python10分钟入门 【2.1】:PyCharm社区版配置Anaconda开发环境 【2.2】:Python基础知识及正则表达式入门 第三章 Python操作Excel 【3.1】:xlrd 使用教程 读取 操作Excel 【3.2】:xlwt 使用教程 写入 操作Excel 【3.3】:xlutils 使用教程 修改 操作Excel 【3.4】:xlwings 使用教程 读取 写入 修改 操【作Excel 【3.5】:openpyxl 使用教程 读取 写入 修改 操作Excel 【3

超级大洋葱的博客 4316

Mixly 数码管时钟

  本文是米思齐数码管图形化编程实验总结分享,走过路过的来看看吧,其中的不足望指出。 一、实验目的及要求 【实验一】实现滚动显示自定义字符串。 【实验二】实现显示自定义时间。 【实验三】实现显示秒表。 二、实验原理与内容 实现米思齐的数码管图形化编程。 三、实验软硬件环境 硬件:Arduino、TM1637数码管 软件:Mixly IDE 四、核心代码及实验效果如下所示 1.实现滚动显示...

weixin_44614199的博客 1647

Python 办公自动化 | 从 PPT 到 Word

在之前的自动化系列文章中,我们分别讲过如何使用 Python 将 Word 中表格信息批量提取至 Excel,也讲过如何将多个 Excel 表格汇总至 Word,今天继续讲解如何将文字从 PPT 中提取出来并写入 Word,主要将涉及如何使用python-pptx和python-docx交互操作 word 和 ppt 文件!

DEVELOPERAA的博客 501

奥顺居PHP测算引流SEO程序_八字风水_起名解梦_星座生肖综合门户源码

奥顺居PHP测算引流SEO程序_八字风水_起名解梦_星座生肖综合门户源码 S30新框架适合多种奥顺插件。

xl1407的博客 1751

Python实现PPT转化为Word和OCR识别

Python实现PPT转化为Word和OCR识别

weixin_52296952的博客 3545

从零到精通:ROS2 MoveIt2与MPC机械臂轨迹规划的完整配置流程

本文详细介绍了ROS2 MoveIt2与MPC机械臂轨迹规划的完整配置流程,从环境准备到高级功能扩展,帮助开发者实现精准控制。通过集成模型预测控制(MPC),机械臂能够优化复杂轨迹规划,处理动态避障,提升工业自动化效率。

juice的博客 705

邮件伪造和SPF

之前看了下邮件伪造觉得挺有意思的,所以看了下邮件伪造的东西,下面简单的总结了一下,如果有不妥的地方还望大佬们提出来。 1. 什么是SPF SPF是 Sender Policy Framework 的缩写,一种以IP地址认证电子邮件发件人身份的技术,是为了防范垃圾邮件而提出来的一种DNS记录类型,它是一种TXT类型的记录。 接收邮件方会首先检查域名的SPF记录,来确定发件人的IP地址是否被包含在SP...

SunJ3t的菠萝屋 2448

【Python办公自动化】用Python操作Word和PowerPoint

日常工作中,有很多简单重复的劳动其实完全可以交给Python程序,比如根据样板文件(模板文件)批量的生成很多个Word文件或PowerPoint文件。在Python中,可以使用名为python-docx 的三方库来操作Word,可以使用名为python-pptx的三方库来生成PowerPoint。

2201_75362610的博客 629

RK3568实现蓝牙音箱功能

A2DP旨在通过蓝牙连接传输高质量的立体声音频流。它使用的基本压缩算法是SBC(Sub-Band Coding)来减小音频数据的大小,同时保持高音质,SBC压缩虽然效率较低,但是是必须支持的基本备用方案。A2DP还支持其他高级编解码器,例如AAC、aptX和LDAC,这些编解码器比SBC提供更好的音质,但这些编解码器的支持取决于设备本身的支持情况。注意A2DP协议要与AVRCP协议区分开。A2DP是传输音频的,而AVRCP是用来控制音频的。这里我用到的是RK3568 Android11。

leikko的博客 1174

从PPT到Word,用Python轻松实现办公自动化

作者 |陈熹来源 |早起Python(ID:zaoqi-python)大家好,又到了 Python 办公自动化系列。在之前的自动化系列文章中,我们分别讲过如何使用 Python 将...

程序人生的博客 7220

企业微信开发007_域名主体校验未通过,需配置备案主体与当前企业主体相同或有关联关系的域名_企业内部自建应用开发_配置可信域名_回调URL_可信IP---企业微信开发009

因为我这个企业微信是,已经注册了服务商了,所以我又注册了一个不是服务商的测试企业,没有实名认证的,去试了试。而且,网络上找的教程,都是不够详细的,还是会碰到各种各样的问题,记录下来,为后来者提供便利。首先我用natapp.cn 申请了一个免费的域名,然后去,一个,企业微信上去配置,注意。我这个域名,的主体,可能是域名服务商,比如阿里域名 等等的 不是一般的企业域名。我这个企业微信,是开通了服务商的,企业微信,右上角有服务商管理后台的。到时候,直接用,他们自己企业注册的域名,已经备案的再去尝试,

添柴程序猿的专栏 1694

YOLO11改进|注意力机制篇|引入ELA注意力机制

YOLO11添加ELA注意力机制

A1983Z的博客 3647

写入word_从PPT到Word,用Python轻松实现办公自动化

作者 | 陈熹来源 | 早起Python(ID:zaoqi-python)大家好,又到了 Python 办公自动化系列。在之前的自动化系列文章中,我们分别讲过如何使用 Python 将 Word 中表格信息批量提取至 Excel,也讲过如何将多个 Excel 表格汇总至 Word,今天继续讲解如何将文字从 PPT 中提取出来并写入 Word,主要将涉及如何使用python-pptx和python...

weixin_39675679的博客 162

uniapp(全端兼容) - 最新详细实现双色球开奖走势图功能组件,uni-app红球走势图/蓝球走势图,解决双色球 “蓝球连线“ 问题,双色球效果及用线连接每个号码详细教程(同样适用于彩票开奖走势图

uni-app,双色球,安卓app,苹果app,微信小程序,移动端,H5网页,手机网站,微信小程序、支付宝小程序,手机app端,nvue,红球走势,蓝球走势,连线,uniapp(vue):js实现双色球开奖走势图带连线,vue2,vue3,uniApp双色球组件插件,uniapp如何实现双色球走势图和连线,彩票走势图,前端 Vue实现彩票走势图,详细示例,走势图,彩票项目,绘制股票走势图,前端 JS实现彩票开奖走势图 连线,Uniapp有没有双色球的页面代码,红球蓝球的走势图如何做,双色球红球和值尾走势图,

✅ 精选推荐文章 3344

写入word_Python办公自动化(十) | 从PPT到Word

大家好,又到了Python办公自动化系列。在之前的自动化系列文章中,我们分别讲过如何使用Python将Word中表格信息批量提取至Excel,也讲过如何将多个Excel表格汇总至Word,今天继续讲解如何将文字从PPT中提取出来并写入Word,主要将涉及如何使用python-pptx和python-docx交互操作word和ppt文件!本文依旧来源于真实的办公自动化需求!一、需求说明有一份如图所示...

weixin_42525211的博客 156

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

python遍历矩阵_Python之父Guido van Rossum:教你用“胶水语言”实现办公自动化

大家好,又到了Python办公自动化系列。在之前的自动化系列文章中,我们分别讲过如何使用Python将Word中表格信息批量提取至Excel,也讲过如何将多个Excel表格汇总至Word,今天继续讲解如何将文字从PPT中提取出来并写入Word,主要将涉及如何使用python-pptx和python-docx交互操作word和ppt文件!本文依旧来源于真实的办公自动化需求!一、需求说明有一份如图所示...

weixin_39609670的博客 189

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

从0开始学python(day26——用python操作word与powerpoint,可跳过)

用Python程序解决办公自动化的问题真的非常酷,它可以将我们从繁琐乏味的劳动中解放出来。写这类代码就是去做一件一劳永逸的事情,写代码的过程即便不怎么愉快,使用这些代码的时候应该是非常开心的。建议大家用ai试一试,让你的工作能够更轻松。

qq_56657939的博客 855

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: 用10行python代码获取全国城市交通生活圈
下一篇: 别再问我Python怎么操作Word了!
酸菜鱼编程
博客等级 码龄6年 155粉丝 63原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值