久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

如何使用Python提取Word文檔中的圖片,?

 知識情報院 2022-02-21

有時候我們會收到一些Word文檔,,如簡歷,、論文以及其他的Word文檔,,里面包含了很多圖片。如何使用自動化的方式,,提取Word里面的圖片呢,?下面就讓我們來一起學(xué)習(xí)一下

1 安裝第三方庫 Python-docx

打開cmd命令行(或者powershell)窗口,輸入安裝第三方庫命令

pip install python-docx

等待安裝完成

2,、導(dǎo)入os,、re以及docx庫

import docx
import os, re

3,、編寫圖片提取函數(shù)

1、讀取Word文檔,,遍歷圖片

doc = docx.Document(word_path)
        dict_rel = doc.part._rels
        for rel in dict_rel:
            rel = dict_rel[rel]
            if "image" in rel.target_ref:
                if not os.path.exists(result_path):
                    os.makedirs(result_path)
                img_name = re.findall("/(.*)", rel.target_ref)[0]
                word_name = os.path.splitext(word_path)[0]
                if os.sep in word_name:
                    new_name = word_name.split('\\')[-1]
                else:
                    new_name = word_name.split('/')[-1]
                img_name = f'{new_name}-'+'.'+f'{img_name}'

2,、依次保存圖片

with open(f'{result_path}/{img_name}'"wb"as f:
    f.write(rel.target_part.blob)

3、完整的函數(shù)代碼

def get_pictures(word_path, result_path):
    """
    圖片提取
    :param word_path: word路徑
    :return: 
    """

    try:
        doc = docx.Document(word_path)
        dict_rel = doc.part._rels
        for rel in dict_rel:
            rel = dict_rel[rel]
            if "image" in rel.target_ref:
                if not os.path.exists(result_path):
                    os.makedirs(result_path)
                img_name = re.findall("/(.*)", rel.target_ref)[0]
                word_name = os.path.splitext(word_path)[0]
                if os.sep in word_name:
                    new_name = word_name.split('\\')[-1]
                else:
                    new_name = word_name.split('/')[-1]
                img_name = f'{new_name}-'+'.'+f'{img_name}'
                with open(f'{result_path}/{img_name}'"wb"as f:
                    f.write(rel.target_part.blob)
    except:
        pass

4,、編寫主運行函數(shù)

if __name__ == '__main__':

    #獲取文件夾下的word文檔列表,路徑自定義

    os.chdir("D:\Demo")
    spam=os.listdir(os.getcwd())
    for i in spam:
        get_pictures(str(i),os.getcwd())

5,、結(jié)果展示

完整代碼

import docx
import os, re

# 需要安裝第三方包
# pip install python-docx
 
def get_pictures(word_path, result_path):
    """
    圖片提取
    :param word_path: word路徑
    :return: 
    """

    try:
        doc = docx.Document(word_path)
        dict_rel = doc.part._rels
        for rel in dict_rel:
            rel = dict_rel[rel]
            if "image" in rel.target_ref:
                if not os.path.exists(result_path):
                    os.makedirs(result_path)
                img_name = re.findall("/(.*)", rel.target_ref)[0]
                word_name = os.path.splitext(word_path)[0]
                if os.sep in word_name:
                    new_name = word_name.split('\\')[-1]
                else:
                    new_name = word_name.split('/')[-1]
                img_name = f'{new_name}-'+'.'+f'{img_name}'
                with open(f'{result_path}/{img_name}'"wb"as f:
                    f.write(rel.target_part.blob)
    except:
        pass

if __name__ == '__main__':

    #獲取文件夾下的word文檔列表,路徑自定義

    os.chdir("D:\Demo")
    spam=os.listdir(os.getcwd())
    for i in spam:
        get_pictures(str(i),os.getcwd())

今天和大家一起學(xué)習(xí)了如何從Word文檔中批量提取圖片,大家都學(xué)會了嗎,?趕快試一試吧,!后續(xù),我會和大家一起學(xué)習(xí)更多的Python編程與Office辦公自動化的例子,,歡迎大家關(guān)注,!

    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約