使用 Python 获取 pptx 文件幻灯片的标题

get the title of slides of pptx file using Python

我正在尝试使用 Python 获取 powerpoint 文件的每张幻灯片的标题。我在 Python 中使用 Presentation 包,但我找不到任何指定标题的内容。 我有这段代码 return powerpoint 文件的内容。但我需要指定标题。

from pptx import Presentation

prs = Presentation("pp.pptx")

# 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)

这是我的解决方案:

from pptx import Presentation

filename = path_of_pptx

prs = Presentation(filename)

for slide in prs.slides:
    title = slide.shapes.title.text
    print(title)

输入:

输出:

Hello, World!
Hello, World2!
Hello, World3!

正如@scanny 指出的那样,要基于@eyllanesc 的回答,slide.shapes.title 是一个占位符。

这意味着您可以像这样访问标题文本:

from pptx import Presentation

prs = Presentation(ppt_filename)

slide = prs.slides[0]
slide.shapes.title.text = 'New Title'
print('New Title is:')
print(slide.shapes.title.text)

并更改任何其他标题占位符属性,例如:

slide.shapes.title.top = 100
slide.shapes.title.left = 100
slide.shapes.title.height = 200