Python 如何检测数据类型并从pptx幻灯片读取数据

Python 如何检测数据类型并从pptx幻灯片读取数据,python,file,python-pptx,Python,File,Python Pptx,我必须读pptx文件。 在重编时,我将从幻灯片中提取一些数据,但不是全部数据。 查找幻灯片样本。我能够读取除{1,2,3}选项数据之外的所有数据。 我也想读一读 这是代码 from pptx import Presentation prs = Presentation(path_to_presentation) # text_runs will be populated with a list of strings, # one for each text run in presentati

我必须读pptx文件。 在重编时,我将从幻灯片中提取一些数据,但不是全部数据。 查找幻灯片样本。我能够读取除{1,2,3}选项数据之外的所有数据。 我也想读一读

这是代码

from pptx import Presentation

prs = Presentation(path_to_presentation)

# text_runs will be populated with a list of strings,
# one for each text run in presentation
text_runs = []

for slide in prs.slides:
   for shape in slide.shapes:
     if not shape.has_text_frame:
        continue
   for paragraph in shape.text_frame.paragraphs:
       for run in paragraph.runs:
           text_runs.append(run.text)

幻灯片上的所有项目都是某种形状。唯一的例外是背景图像

然而,也有从幻灯片布局“继承”形状的业务。幻灯片布局中的项目(例如徽标)将以PowerPoint呈现的形式直观地显示在幻灯片上,但不会包含在幻灯片的XML中,也不会显示在slide.shapes中

另一件需要注意的事情是,PowerPoint出于各种原因分解文本,即使它们的格式完全相同。你不能确定它是否能在逻辑上完整地运行。因此,根据您要查找的数据的形式,您可能希望直接访问段落.text并从那里解析内容


当然,如果一个形状是一个图像(例如1.或2.的),它们将以文本的形式出现,但不会有文本框或任何文本。

幻灯片上的所有项目都是一种或另一种形状。唯一的例外是背景图像

然而,也有从幻灯片布局“继承”形状的业务。幻灯片布局中的项目(例如徽标)将以PowerPoint呈现的形式直观地显示在幻灯片上,但不会包含在幻灯片的XML中,也不会显示在slide.shapes中

另一件需要注意的事情是,PowerPoint出于各种原因分解文本,即使它们的格式完全相同。你不能确定它是否能在逻辑上完整地运行。因此,根据您要查找的数据的形式,您可能希望直接访问段落.text并从那里解析内容


当然,如果形状是图像(例如1.或2.的图像),它们将以文本的形式出现,但不会有文本框或任何文本。

您确定它们在幻灯片中。形状中,并且您确定它们有文本框吗?也许您可以列出幻灯片上的所有对象,并使用
dir()
查看它们的类型和属性。对幻灯片上的内容做一个完整的清单。因为你只发布了一个
png
,所以很难进一步帮助。是的,我检查了一些数据没有以幻灯片的形式出现。形状,这就是为什么我看不到数据的位置。数据以哪种类型出现。我不熟悉pypptx,但我想知道它是否只能读取它能够生成的对象。它并没有说它可以读取任何文件。这似乎更适合自动生成ppt。发送给我,其中显示了一个谷歌邮件列表,用于询问问题和获取帮助-如果您还没有找到,我会进行调查。还有。你确定那些是幻灯片。形状,你确定它们有文本框吗?也许您可以列出幻灯片上的所有对象,并使用
dir()
查看它们的类型和属性。对幻灯片上的内容做一个完整的清单。因为你只发布了一个
png
,所以很难进一步帮助。是的,我检查了一些数据没有以幻灯片的形式出现。形状,这就是为什么我看不到数据的位置。数据以哪种类型出现。我不熟悉pypptx,但我想知道它是否只能读取它能够生成的对象。它并没有说它可以读取任何文件。这似乎更适合自动生成ppt。发送给我,其中显示了一个谷歌邮件列表,用于询问问题和获取帮助-如果您还没有找到,我会进行调查。也。