使用Python + Apache POI提取Excel中的圖片

最近在作一個python項目,項目的有一部分是要提取Excel中的文本與圖片。python

以前的需求只是提取Excel中的文本,這個功能的實現比較簡單,在python的官網有幾個庫可供選用,好比xlrd,openpyxl等。apache

後來需求要求將Excel中的圖片提取出來。我嘗試過使用openpyxl去提取,可是發現openpyxl並無讀取Excel文件的圖片信息,只有文本--用openpyxl打開一個有圖片的Excel,而後再保存這個Excel,你會發現圖片丟失了。網上有不少python庫,基本上只介紹瞭如何去寫Excel文件,讀的卻很是少。由於目標平臺是Linux,故Win32COM/自動化也不在考慮之中。url

最後從Android操做Excel的項目中獲得啓示,Android中使用Apache POI實現對Excel的操做,Apache POI是純Java的代碼,依賴於jre,而jre在Linux和Windows上面均可以運行,因而就有了這個方案:將POI編譯成可執行文件,在目標機器上安裝jre,而後讓python經過命令行調用這個可執行程序,從而實現對特定Excel的圖片提取。命令行

相對於其餘的python的Excel庫,POI功能比較完善,除了Excel,還能夠處理其餘的Microsoft Office文檔。不足的地方是須要jre的支持。圖片

我的認爲這是一個可行方案之一,跨平臺而且省時省力。不知道還有沒有其餘更好的方案。文檔

參考資料:xlrd的百度百科xlrd的官網openpyxl官網Apache POI官網get

相關文章
相關標籤/搜索