当前位置: 欣欣网 > 码农

Python办公神器:教你批量提取PPT中的文字

2024-03-19码农

介绍

  • 本文将介绍如何使用 pptx docx 库来将PPT中的文字提取到Word中。

  • 本文假设你已经安装了python和这两个库。

  • 本文的场景是:你需要将一个PPT文件中的所有文字内容提取出来,并按照原来的格式和顺序写入到一个Word文档中。

  • 准备工作

  • 首先,我们需要导入 pptx docx 库,以及其他一些辅助库,如下:

  • import pptx
    from docx import Document
    from docx.shared import Pt
    import os

  • 这些库的作用是:

  • pptx 库可以让我们读取和修改PPT文件的内容和格式。

  • docx 库可以让我们创建和编辑Word文档的内容和格式。

  • Pt 是一个辅助函数,可以将字号转换为磅(point)单位,方便我们设置字体大小。

  • os 库可以让我们操作文件系统,例如创建目录,保存文件等。

  • 然后,我们需要定义一些常量,如文件名,字体,颜色等,如下:

  • # 文件名
    PPT_FILE = 'source.pptx'
    WORD_FILE = 'output.docx'
    # 字体
    FONT_NAME = '宋体'
    FONT_SIZE = 12

  • 这些常量的作用是:

  • PPT_FILE 是我们要提取文字的PPT文件的名称,你可以根据你自己的文件名进行修改。

  • WORD_FILE 是我们要写入文字的Word文档的名称,你可以根据你自己的喜好进行修改。

  • FONT_NAME 是我们要使用的字体的名称,你可以根据你自己的喜好进行修改。

  • FONT_SIZE 是我们要使用的字体的大小,你可以根据你自己的喜好进行修改。

  • 接下来,我们需要加载PPT文件和创建Word文档对象,如下:

  • # 加载PPT文件
    prs = pptx.Presentation(PPT_FILE)
    # 创建Word文档对象
    doc = Document()

  • 这些代码的作用是:

  • prs = pptx.Presentation(PPT_FILE) 是用 pptx 库的 Presentation 类来创建一个PPT文件的对象,我们可以通过这个对象来访问和修改PPT文件的内容和格式。

  • doc = Document() 是用 docx 库的 Document 类来创建一个空白的Word文档的对象,我们可以通过这个对象来添加和编辑Word文档的内容和格式。

  • 提取PPT文字

  • 首先,我们需要遍历PPT文件中的每一个幻灯片,如下:

  • # 遍历PPT文件中的每一个幻灯片
    for slide in prs.slides:
    # 在此处添加代码

  • 这段代码的作用是:

  • for slide in prs.slides: 是用一个 for 循环来遍历PPT文件对象 prs 中的每一个幻灯片对象 slide ,我们可以通过这个对象来访问和修改幻灯片的内容和格式。

  • 然后,我们需要遍历每一个幻灯片中的每一个形状,判断是否是包含文本的形状,如果是,就获取其内部的文本框对象,如下:

  • # 遍历每一个幻灯片中的每一个形状
    for shape in slide.shapes:
    # 判断是否是包含文本的形状
    if shape.has_text_frame:
    # 获取其内部的文本框对象
    text_frame = shape.text_frame
    # 在此处添加代码

  • 最后,我们需要遍历每一个文本框中的每一个段落,获取其文本内容和格式,然后将其写入到Word文档中,如下:

  • # 遍历每一个文本框中的每一个段落
    for paragraph in text_frame.paragraphs:
    # 获取其文本内容和格式
    text = paragraph.text
    font = paragraph.font
    # 将其写入到Word文档中
    doc.add_paragraph(text, style=font)

    保存Word文档

  • 最后,我们需要保存生成的Word文档,如下:

  • # 保存生成的Word文档
    doc.save(WORD_FILE)

  • 这段代码的作用是:

  • doc.save(WORD_FILE) 是用Word文档对象 doc save 方法来保存生成的Word文档,参数 WORD_FILE 是我们定义的Word文档的名称,你可以在你的电脑上找到这个文件。

  • 总结

  • 本文介绍了如何使用 python-pptx python-docx 库来将PPT中的文字提取到Word中。

  • 本文通过一个实际的场景,演示了如何遍历PPT文件中的每一个幻灯片,每一个形状,每一个文本框,每一个段落,获取其文本内容和格式,然后将其写入到Word文档中。

  • Sora最近老火了,Sora 的出现会对短视频、广告、游戏、影视行业等产业格局一定会被重塑,目前 Sora 还没正式开放注册,大家看到的使用体验大部分都来自官网,或者少部分的用户分享。

    为了避免更多读者受骗,我们直接给大家整了一个免费的。

    注意是下面【 Python都知道 】公众号,不是本公众号,点击下方的公众号卡片,然后回复【 sora ,即可获取最新 Sora 的最全资料。


    目前已经分享了,如何申请 Sora 的内测,以及最新关于 Sora 的技术特点,使用教程、变现机遇等等。

    大家如果想领取这份资料,可以点击下方的公众号卡片,然后回复 sora ,即可获取最新 Sora 的最全资料。

    需要提醒大家的是,Sora 目前还没有完全开放,任何市面上付费的一些课程,都请大家谨慎选择。

    可以确定的是:未来 10-20年,一定是 AI 的大风口、大时代,如果错过了公众号、错过了抖音、错过了小红书。

    请一定不要错过 AI +。

    面对浪潮,恐惧只会让我们伫立在原地,被巨浪吞噬。

    要去主动适应它,不被恐惧束缚,动起胳膊动起脚,才不会被淘汰。

    注意是下面【 Python都知道 】公众号,不是本公众号,点击下方的公众号卡片,然后回复 【 sora ,即可获取最新 Sora 的最全资料。