Python读取Word/PPT文件文本内容和图片内容

简介: 读取某个指定路径下的Word/PPT文件,并将其中所有的文本内容生成一个TXT文件,将所有的图片内容保存在一个文件夹里

读取Word文件:

读取某个指定路径下的Word文件,并将其中所有的文本内容生成一个TXT文件,将所有的图片内容保存在一个文件夹里

程序实现:

为了实现这个功能,你可以使用Python的docx库来读取Word文档的文本内容和图片,然后使用os库来进行文件和文件夹的操作。确保在运行程序之前安装好docx库,你可以使用以下命令安装它:

pip install python-docx

以下是一个实现你要求的Python程序:

import os
import docx
from docx.shared import Inches
def extract_text_from_docx(docx_path):
    doc = docx.Document(docx_path)
    text = []
    for paragraph in doc.paragraphs:
        text.append(paragraph.text)
    return '\n'.join(text)
def extract_images_from_docx(docx_path, output_folder):
    doc = docx.Document(docx_path)
    for rel in doc.part.rels:
        if "image" in doc.part.rels[rel].target_ref:
            image_part = doc.part.related_parts[doc.part.rels[rel].target_ref]
            image_data = image_part.blob
            image_name = os.path.basename(image_part.target_ref)
            image_path = os.path.join(output_folder, image_name)
            with open(image_path, 'wb') as f:
                f.write(image_data)
def main():
    docx_path = 'path_to_your_input_docx_file.docx'  # 替换为你的Word文档路径
    output_text_file = 'output_text.txt'
    output_image_folder = 'output_images'
    # 创建保存图片的文件夹
    os.makedirs(output_image_folder, exist_ok=True)
    # 提取文本内容并保存为TXT文件
    text_content = extract_text_from_docx(docx_path)
    with open(output_text_file, 'w', encoding='utf-8') as txt_file:
        txt_file.write(text_content)
    # 提取图片并保存到指定文件夹
    extract_images_from_docx(docx_path, output_image_folder)
if __name__ == '__main__':
    main()

在这个示例中,你需要将path_to_your_input_docx_file.docx替换为你实际的Word文档路径。程序会读取指定的Word文档,将文本内容保存为一个TXT文件,同时将所有的图片保存在一个文件夹中。记得事先在相应的路径下创建好输出文件夹。

读取PPT文件:

读取某个指定路径下的PPT文件,并将其中所有的文本内容生成一个TXT文件,将所有的图片内容保存在一个文件夹里

程序实现:

要实现读取指定路径下的PPT文件,并将文本内容保存为TXT文件,同时将图片保存在一个文件夹中,你可以使用Python的python-pptx库来处理PPT文件中的文本和图片。确保在运行程序之前安装好python-pptx库,你可以使用以下命令安装它:

pip install python-pptx

以下是一个实现你要求的Python程序:

import os
from pptx import Presentation
from pptx.util import Inches
def extract_text_from_ppt(ppt_path):
    prs = Presentation(ppt_path)
    text = []
    for slide in prs.slides:
        for shape in slide.shapes:
            if hasattr(shape, 'text'):
                text.append(shape.text)
    return '\n'.join(text)
def extract_images_from_ppt(ppt_path, output_folder):
    prs = Presentation(ppt_path)
    image_count = 0
    for slide in prs.slides:
        for shape in slide.shapes:
            if shape.shape_type == 13:  # 判断是否为图片
                image = shape.image
                image_bytes = image.blob
                image_extension = image.ext
                image_name = f"image_{image_count}{image_extension}"
                image_path = os.path.join(output_folder, image_name)
                with open(image_path, 'wb') as f:
                    f.write(image_bytes)
                image_count += 1
def main():
    ppt_path = 'path_to_your_input_ppt_file.pptx'  # 替换为你的PPT文件路径
    output_text_file = 'output_text.txt'
    output_image_folder = 'output_images'
    # 创建保存图片的文件夹
    os.makedirs(output_image_folder, exist_ok=True)
    # 提取文本内容并保存为TXT文件
    text_content = extract_text_from_ppt(ppt_path)
    with open(output_text_file, 'w', encoding='utf-8') as txt_file:
        txt_file.write(text_content)
    # 提取图片并保存到指定文件夹
    extract_images_from_ppt(ppt_path, output_image_folder)
if __name__ == '__main__':
    main()

在这个示例中,你需要将path_to_your_input_ppt_file.pptx替换为你实际的PPT文件路径。程序会读取指定的PPT文件,将文本内容保存为一个TXT文件,同时将所有的图片保存在一个文件夹中。记得事先在相应的路径下创建好输出文件夹。

目录
相关文章
|
6月前
|
XML 数据格式 Python
从手动编辑到代码生成:Python 助你高效创建 Word 文档
本文介绍如何用Python实现Word文档自动化生成,结合python-docx、openpyxl和matplotlib库,高效完成报告撰写、数据插入与图表生成,大幅提升办公效率,降低格式错误,实现数据驱动的文档管理。
896 2
|
7月前
|
数据可视化 Linux iOS开发
Python脚本转EXE文件实战指南:从原理到操作全解析
本教程详解如何将Python脚本打包为EXE文件,涵盖PyInstaller、auto-py-to-exe和cx_Freeze三种工具,包含实战案例与常见问题解决方案,助你轻松发布独立运行的Python程序。
1706 2
|
6月前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。
1132 68
|
8月前
|
缓存 数据可视化 Linux
Python文件/目录比较实战:排除特定类型的实用技巧
本文通过四个实战案例,详解如何使用Python比较目录差异并灵活排除特定文件,涵盖基础比较、大文件处理、跨平台适配与可视化报告生成,助力开发者高效完成目录同步与数据校验任务。
273 0
|
8月前
|
监控 Linux 数据安全/隐私保护
Python实现Word转PDF全攻略:从入门到实战
在数字化办公中,Python实现Word转PDF自动化,可大幅提升处理效率,解决格式兼容问题。本文详解五种主流方案,包括跨平台的docx2pdf、Windows原生的pywin32、服务器部署首选的LibreOffice命令行、企业级的Aspose.Words,以及轻量级的python-docx+pdfkit组合。每种方案均提供核心代码与适用场景,并涵盖中文字体处理、表格优化、批量进度监控等实用技巧,助力高效办公自动化。
1717 0
|
9月前
|
安全 Linux 网络安全
Python极速搭建局域网文件共享服务器:一行命令实现HTTPS安全传输
本文介绍如何利用Python的http.server模块,通过一行命令快速搭建支持HTTPS的安全文件下载服务器,无需第三方工具,3分钟部署,保障局域网文件共享的隐私与安全。
2251 0
|
7月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
1055 102
|
7月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
435 104
|
7月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
342 103

推荐镜像

更多