返回顶部
首页 > 资讯 > 后端开发 > Python >Python提取Word中图片的实现步骤
  • 547
分享到

Python提取Word中图片的实现步骤

2024-04-02 19:04:59 547人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录1.思路2.具体实现2.1导入相关库2.2定义函数2.3重命名Word文件,将后缀名docx改为zip2.4zip还原为docx文件,并获得图片的列表2.5将图片复制到需要保存的

1.思路

在网上查找了半天,基本都是提取word中文字的,没有找到可以把word中的图片提取出来的方法。一个巧合的情况下,发现将word的后缀名改为zip,然后解压该zip,可以看到原来word是这样存储的:

图片就存放在固定的文件夹下:/word/media/;

那么我们就只需要批量的修改文件后缀名,并且解压之后将图片拷贝到需要存放的地方,然后将该文件夹清空留作下次的路径,并且将文件从zip改回docx即可。(注意:doc不支持这个方法,如果需要提取doc格式的图片,可以先转为docx,再提取即可)

2.具体实现

2.1导入相关库

'''
===========================================
  @author:  renjiaxin
  @time:    2018/8/9 0009   10:00
===========================================
'''
 
import zipfile
import os
import shutil

2.2定义函数

为了方便和其他函数调用,直接写了个函数完成这个功能,在这里,我们需要以下四个参数:

  • word文档的路径
  • zip压缩文件的路径
  • 临时解压的tmp路径
  • 最后需要保存的store_path路径
def word2pic(path, zip_path, tmp_path, store_path):
    '''
    :param path:源文件
    :param zip_path:docx重命名为zip
    :param tmp_path:中转图片文件夹
    :param store_path:最后保存结果的文件夹(需要手动创建)
    :return:
    '''

2.3重命名word文件,将后缀名docx改为zip

    # 将docx文件重命名为zip文件
    os.rename(path, zip_path)
    # 进行解压
    f = zipfile.ZipFile(zip_path, 'r')
    # 将图片提取并保存
    for file in f.namelist():
        f.extract(file, tmp_path)
    # 释放该zip文件
    f.close()

2.4zip还原为docx文件,并获得图片的列表

    # 将docx文件从zip还原为docx
    os.rename(zip_path, path)
    # 得到缓存文件夹中图片列表
    pic = os.listdir(os.path.join(tmp_path, 'word/media'))

2.5将图片复制到需要保存的文件夹中

并且我们将文件的名字命名为word所在的路径

    # 将图片复制到最终的文件夹中
    for i in pic:
        # 根据word的路径生成图片的名称
        new_name = path.replace('\\', '_')
        new_name = new_name.replace(':', '') + '_' + i
        shutil.copy(os.path.join(tmp_path + '/word/media', i), os.path.join(store_path, new_name))

2.6删除tmp缓冲文件夹中的文件,用以存储下一次的文件

    # 删除缓冲文件夹中的文件,用以存储下一次的文件
    for i in os.listdir(tmp_path):
        # 如果是文件夹则删除
        if os.path.isdir(os.path.join(tmp_path, i)):
            shutil.rmtree(os.path.join(tmp_path, i))

2.7运行程序

if __name__ == '__main__':
    # 源文件
    path = r'E:\doGCat\提取图片\log.docx'
    # docx重命名为zip
    zip_path = r'E:\dogcat\提取图片\log.zip'
    # 中转图片文件夹
    tmp_path = r'E:\dogcat\提取图片\tmp'
    # 最后保存结果的文件夹
    store_path = r'E:\dogcat\提取图片\测试'
    m = word2pic(path, zip_path, tmp_path, store_path)

3效果预览

3.1源word

3.2提取的图片

4附:doc转docx

from win32com import client
import traceback
 
def doc2docx(doc_name, docx_name):
    '''
    # doc转docx
    :param doc_name: doc文档路径
    :param docx_name: docx文档路径
    :return:
    '''
    try:
        # 首先将doc转换成docx
        word = client.Dispatch("Word.Application")
        doc = word.Documents.Open(doc_name)
        # 使用参数16表示将doc转换成docx
        doc.SaveAs(docx_name, 16)
        doc.Close()
        word.Quit()
    except:
        traceback.print_exc()

到此这篇关于python提取Word中图片的实现步骤的文章就介绍到这了,更多相关Python提取Word图片内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python提取Word中图片的实现步骤

本文链接: https://lsjlt.com/news/119501.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python提取Word中图片的实现步骤
    目录1.思路2.具体实现2.1导入相关库2.2定义函数2.3重命名word文件,将后缀名docx改为zip2.4zip还原为docx文件,并获得图片的列表2.5将图片复制到需要保存的...
    99+
    2024-04-02
  • 分步骤教你用python一步步提取PPT中的图片
    目录一、实现原理二、提取PPT中的图片1、打开压缩包2、解压文件三、提取PPT中的图片一、实现原理 其实实现原理很简单,我们的pptx文件其实是一个压缩包。我们可以直接修改pptx文...
    99+
    2024-04-02
  • python提取word文件中的所有图片
    前言 办公中,偶尔会碰到一种情况,需要提取word文档中的图片,决定写这样一款工具自动提取图片。 关于脚本的使用: 情景1:如果你拿到的是一个文件夹,所有的word文件都在这个文件夹...
    99+
    2024-04-02
  • 一步步教你用Python提取PPT中的图片
    目录一、前言二、实现原理三、提取PPT中的图片1、打开压缩包2、解压文件四、提取PPT中的图片附:python提取PPT中的文字(包括图片中的文字)总结一、前言 今天要带大家实现的是...
    99+
    2023-01-17
    提取ppt里面的图片 python处理ppt python提取ppt图片
  • Python提取PDF中的图片的实现示例
    目录1.导入相关库2.具体实现2.1.使用正则表达式查找PDF中的图片2.2.打印PDF的相关信息2.3.遍历PDF中的对象,遇到是图像才进行下一步,不然就continue2.4.将...
    99+
    2024-04-02
  • python爬取图片的步骤是什么
    爬取图片的步骤通常包括以下几个步骤:1. 导入所需的库:一般需要导入`requests`库来发送网络请求,以获取网页内容,以及`be...
    99+
    2023-08-17
    python
  • python提取word文件中的图片并上传阿里云OSS
    该需求是一个真实的实战需求,如果你的公司在做题库类的系统,一定会涉及该方面的内容,所以收藏起来吧。 需求简单描述如下所示: 1.提取 Word(为了便于解决,统一格式为 docx)中...
    99+
    2024-04-02
  • Python数据获取实现图片数据提取
    目录一、利用exifread提取图片的EXIF信息二、循环遍历图片信息比如我随便从手机上传一张图片到我的电脑里,通过python可以获取这张照片的所有信息。如果是数码相机拍摄的照片,...
    99+
    2024-04-02
  • 基于Python实现图片主题色的提取
    目录前言实现流程安装依赖提取主题色测试前言 在 Groove 音乐中,当我们改变歌曲时,底部播放栏的颜色会随专辑封面而变,比如下图中播放栏的颜色变成了 aiko 衣服的颜色。下面我们...
    99+
    2024-04-02
  • Python数据获取如何实现图片数据提取
    本篇内容主要讲解“Python数据获取如何实现图片数据提取”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python数据获取如何实现图片数据提取”吧!有很多功能…比如用户画...
    99+
    2023-06-30
  • python怎么提取图片中的文字
    要提取图片中的文字,可以使用Python的第三方库tesseract-ocr。Tesseract是一个开源的OCR引擎,可以识别多种...
    99+
    2023-08-12
    python
  • Python实现读取excel中的图片功能
    目录一、读取excel文件二、读取excel中的图片(1)使用zipfile模块(2)使用openpyxl读取三、对读取的图片进行处理补充一、读取excel文件 我们先来看看如何读取...
    99+
    2024-04-02
  • python实现图片处理和特征提取详解
    这是一张灵异事件图。。。开个玩笑,这就是一张普通的图片。 毫无疑问,上面的那副图画看起来像一幅电脑背景图片。这些都归功于我的妹妹,她能够将一些看上去奇怪的东西变得十分吸引眼球。然而,我们生活在数字图片的年...
    99+
    2022-06-04
    详解 特征 图片处理
  • Python实现提取图片中颜色并绘制成可视化图表
    目录导入模块并加载图片提取颜色并整合成表格绘制图表实战环节今天小编来为大家分享一个有趣的可视化技巧,如何从图片中提取颜色然后绘制成可视化图表,如下图所示 在示例照片当中有着各种各样...
    99+
    2024-04-02
  • C#/VB.NET如何实现从PPT中提取图片
    本文小编为大家详细介绍“C#/VB.NET如何实现从PPT中提取图片”,内容详细,步骤清晰,细节处理妥当,希望这篇“C#/VB.NET如何实现从PPT中提取图片”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。程序环...
    99+
    2023-07-05
  • 通过Python的fitz库提取pdf中的图片
    文章目录 前言一、fitz库是什么?二、安装fitz库三、查看fitz库版本四、pymupdf库是什么?五、安装pymupdf库六、查看pymupdf库版本七、fitz和pymupdf是什么关...
    99+
    2023-08-31
    python pdf 开发语言
  • 【Python • 图片识别】pytesseract快速识别提取图片中的文字
    提示:本文多图,请手机端注意流量。 文章目录 前言一、配置环境1. 安装python依赖2. 安装识别引擎安装tesseract识别引擎`(可跳过)`验证是否安装成功 二、使...
    99+
    2023-09-10
    python 开发语言
  • Python提取视频帧图片实例代码
    为了从视频中提取每一帧图片,编写Python脚本实现该功能 video_path为指定的视频路径 interval为指定分割视频是是否跳帧,默认不跳帧,即全部分割 width, he...
    99+
    2024-04-02
  • python将图片转为矢量图的方法步骤
    本文主要介绍了python图片转为矢量图,分享给大家,具体如下: import numpy as np import matplotlib.pyplot as plt impor...
    99+
    2024-04-02
  • C#/VB.NET实现从PPT中提取图片的示例代码
    目录程序环境从整个演示文稿中提取图像完整代码效果图从特定演示幻灯片中提取图像完整代码效果图PowerPoint是用于制作幻灯片(演示文稿)的应用软件,每张幻灯片中都可以包含文字、图形...
    99+
    2023-03-14
    C#实现PPT提取图片 C# PPT提取图片 C# PPT 图片
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作