本文介绍 说实话,这个需求头一次碰到,我相信对于大多数朋友来说,也是头一次碰到。“提取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 )
其中:
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个表,自己可以下去尝试一下哦!
人工智能与大数据技术