Python提取docx文檔中所有嵌入式圖片和浮動圖片

  • 2019 年 11 月 26 日
  • 筆記

術語:

浮動圖片,是指在Word文檔中位置可以自由移動、可以環繞文字或放置於文字上方、下方的圖片,不佔文檔流的位置,可以和文字或嵌入式圖片重疊。

嵌入式圖片或行內圖片,和文檔中的文字一樣占文檔流的位置,不能自由移動位置,也不能環繞文字,不能放置於文字的上方或下方。直接插入Word文檔的圖片默認為嵌入式圖片,如果改為浮動圖片,需要單獨設置。

==============

首先,我們準備一個文件「包含圖片的文檔.docx」,裡面放幾個圖片,設置其中幾個圖片浮動,分別位於文字下方和文字上方,再寫幾個字,如圖:

然後使用擴展庫python-docx提取其中的圖片,目前這個庫似乎只支援嵌入式圖片的提取,不支援浮動圖片,有知道的朋友請留言告知,測試成功後可以獲贈董老師任意圖書一本。

參考程式碼:使用Python批量提取並保存docx文檔中的圖片

提取結果:

改用擴展庫docx2python,官方對這個擴展庫的簡單描述如下:

首先使用pip命令安裝這個擴展庫,如圖:

參考程式碼:

提取結果:

除了提取圖片之外,obj還具有下面的屬性可以提取docx文檔中不同部分,請自行查閱資料了解其用法。