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天前
|
JSON 安全 数据格式
Python文件操作宝典:一步步教你玩转文件读写
Python文件操作宝典:一步步教你玩转文件读写
|
4天前
|
存储 语音技术 Python
文本 ---> 语音转换器(Python实现)
本项目是一个简单的从文本到语音这样一个转换器的图形用户界面应用,使用了`Python`的`tkinter`库来构建界面,以及`pyttsx3`库来执行转换。以下是对该项目代码的详细解释,后面会附上完整项目代码
8 0
文本 ---> 语音转换器(Python实现)
|
6天前
|
Python
python搭建文件服务
python搭建文件服务
10 1
|
1天前
|
数据采集 Web App开发 iOS开发
经验大分享:Python抓取糗事百科成人版图片
经验大分享:Python抓取糗事百科成人版图片
|
3天前
|
数据采集 XML 存储
【Python实战】Python多线程批量采集图片
【Python实战】Python多线程批量采集图片
|
4天前
|
机器学习/深度学习 人工智能 程序员
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
探索Python宝库:从基础到技能的干货知识(数据类型与变量+ 条件与循环+函数与模块+文件+异常+OOP)
4 0
|
5天前
|
Python
Python正则表达式详解:掌握文本匹配的魔法
Python正则表达式详解:掌握文本匹配的魔法
|
6天前
|
数据安全/隐私保护 Python
经验大分享:python读取yaml文件
经验大分享:python读取yaml文件
12 0
|
存储 Linux 测试技术
Python操作PDF-文本和图片提取(使用PyPDF2和PyMuPDF)
Python操作PDF-文本和图片提取(使用PyPDF2和PyMuPDF)
838 0
python小玩意——使用PIL模块将文本文字放在图片里面
python小玩意——使用PIL模块将文本文字放在图片里面
python小玩意——使用PIL模块将文本文字放在图片里面