直接提取文本已成为从信息密集的 powerpoint 演示文稿中获取文本信息的重要方法。通过使用 python 程序,用户可以方便快捷地访问幻灯片中的内容,从而高效地收集信息并进一步处理数据。在本文中,您将学习如何使用 spire.presentation for python 在 python 中提取 powerpoint 演示文稿的文本,包括幻灯片、演讲者备注和注释中的文本。
安装 spire.presentation for python
本教程需要用到 spire.presentation for python 和 plum-dispatch v1.7.4。可以通过以下 pip 命令将它们轻松安装到 windows 中。
pip install spire.presentation
如果您不确定如何安装,请参考此教程: 如何在 windows 中安装 spire.presentation for python
python 提取 powerpoint 幻灯片中的文本
powerpoint 演示幻灯片中的文本被放置在形状中。因此,开发人员可以通过访问每张幻灯片中的所有形状并提取其中包含的文本来提取演示文稿中的文本。具体步骤如下:
- 创建 presentation 类对象,并使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 遍历演示文稿中的幻灯片,然后遍历每张幻灯片中的形状(shape)。
- 检查形状是否为 iautoshape 实例。如果是,则通过 iautoshape.textframe.paragraphs 属性获取形状中的段落,然后通过 paragraph.text 属性获取段落中的文本。
- 将幻灯片文本写入文本文件。
- python
from spire.presentation.common import *
from spire.presentation import *
# 创建一个presentation对象
presentation = presentation()
# 加载pptx文件
presentation.loadfromfile("输入文档.pptx")
# 用于存储文本内容的列表
text = []
# 遍历每一页幻灯片
for slide in presentation.slides:
# 遍历每个形状
for shape in slide.shapes:
# 判断形状是否是iautoshape
if isinstance(shape, iautoshape):
# 遍历每个段落并获取文本内容
for paragraph in (shape if isinstance(shape, iautoshape) else none).textframe.paragraphs:
text.append(paragraph.text)
# 将文本内容写入到文件中
with open("幻灯片文本.txt", "w", encoding='utf-8') as f:
for s in text:
f.write(s "\n")
# 释放presentation对象
presentation.dispose()
python 提取 powerpoint 演讲者备注中的文本
演讲者备注是为演讲者提供指导的附加信息,听众看不到。每张幻灯片的发言人备注中的文本都存储在备注幻灯片中,开发人员可以通过 notesslide.notestextframe.text 属性提取文本。提取发言人注释中文本的详细步骤如下:
- 创建 presentation 类对象,并使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 遍历每张幻灯片。
- 通过 islide.notesslide 属性获取注释幻灯片,并通过 notesslide.notestextframe.text 属性获取文本。
- 将发言人的备注文本写入文本文件。
- python
from spire.presentation.common import *
from spire.presentation import *
# 创建一个presentation对象
pres = presentation()
# 从输入文件加载presentation对象
pres.loadfromfile("输入文档.pptx")
# 创建一个空列表用于存储演讲者备注文本
list = []
# 遍历每一页幻灯片
for slide in pres.slides:
# 获取当前幻灯片的备注页
notesslide = slide.notesslide
# 获取备注页中的文本内容
notes = notesslide.notestextframe.text
# 将备注文本添加到列表中
list.append(notes)
# 打开一个文本文件用于写入演讲者备注文本
f = open("演讲者备注文本.txt", "w", encoding="utf-8")
# 将演讲者备注文本写入文件
for note in list:
f.write(note)
f.write("\n")
# 关闭文件
f.close()
# 释放presentation对象
pres.dispose()
python 提取 powerpoint 注释中的文本
使用 spire.presentation for python,开发人员还可以从 powerpoint 演示文稿的注释中提取文本,方法是使用 islide.comments 属性从幻灯片中获取注释,并使用 comment.text 属性从注释中检索文本。具体步骤如下:
- 创建 presentation 类对象,并使用 presentation.loadfromfile() 方法加载 powerpoint 演示文稿。
- 遍历每张幻灯片,并通过 islide.comments 属性获取每张幻灯片的注释。
- 遍历每个注释,并通过 comment.text 属性获取每个注释的文本。
- 将注释文本写入文本文件。
- python
from spire.presentation.common import *
from spire.presentation import *
# 创建一个presentation对象
presentation = presentation()
# 加载pptx文件
presentation.loadfromfile("输入文档.pptx")
# 用于存储注释内容的列表
comment_list = []
# 遍历每一页幻灯片
for slide in presentation.slides:
# 获取当前幻灯片的所有注释
comments = slide.comments
# 遍历每条注释并提取注释文本
for comment in comments:
comment_text = comment.text
comment_list.append(comment_text)
# 将注释内容写入到文件中
with open("注释文本.txt", "w", encoding="utf-8") as f:
for comment in comment_list:
f.write(comment "\n")
# 释放presentation对象
presentation.dispose()
申请临时 license
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用javascript。获取有效期 30 天的临时许可证。