本文介紹
說實話,這個需求頭一次碰到,我相信對于大多數朋友來說,也是頭一次碰到,“提取excel文本框中的內容”,對,你沒有聽錯!我也不知道你碰到過沒有,但是這確實是一位朋友提出的很好的問題,

?
說實話,Python操作excel的庫很多,但是我幾乎沒有找到實作這個需求的api,比如說,我最常使用的openpyxl庫,也沒有這個功能,
最后查閱一番,只有xlwings這個庫了!注意:這個庫是第三方庫,大家一定要提前安裝,并且一定要使用最新版本!最新版本!最新版本!不然有些方法你無法使用,
# 打開cmd視窗,安裝xlwings庫 pip install xlwings # 使用xlwings庫之前,需要提前匯入 import xlwings as xw
xlwings庫相關知識
首先,咱們看到的的xw.App()是xlwings庫中的一個函式,
xw.App(visible=False,add_book=False)
其中:
- visible: True表示啟動excel程式后顯示程式視窗,如果為False,表示啟動excel程式后,程式視窗在后臺運行;
- add_book: True表示啟動excel程式后,新建一個空白作業簿,如果為False,表示啟動excel程式后,不新建作業簿;
app.books.open(檔案路徑)
上述函式用于幫助我們打開作業簿,里面有一個引數,傳入本地excel的路徑,用于打開本地的作業簿,
完整代碼
因為這篇文章,只是簡單介紹了xlwings庫的相關使用,有些屬性和方法類似于openpyxl,這里我就不詳細介紹了,Excel文本框中內容如下:

?
直接上代碼:
import xlwings as xw
app = xw.App(visible=False,add_book=False)
wb = app.books.open('test1.xlsx')
for sheet in wb.sheets:
for shape in sheet.shapes:
if "TextBox" in shape.name:
print(shape.text) # 一定要xlwings最新版本,老版本沒有text方法
wb.close()
app.quit()
結果如下:

?
當然,這是針對某一個表,掌握了方法,給你多個表,不就是回圈讀取就行嗎?
1000個表,自己可以下去嘗試一下哦!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/274352.html
標籤:其他
上一篇:使用Gensim庫對文本進行詞袋、TF-IDF和n-gram方法向量化處理
下一篇:性能壓測工具-wrk
