我们可以在Selenium中的工作表中获取所有值。Excel是电子表格,扩展名为.xlsx。一个excel工作簿有多个工作表,每个工作表都由行和列组成。
在所有工作表中,当我们访问一个称为活动工作表的特定工作表时。工作表中的每个单元格都有一个唯一的地址,该地址是行号和列号的组合。
列号从字母A开始,行号从1开始。一个单元格可以包含多种类型的值,它们是工作表的主要组成部分。
要使用python在Selenium中使用excel,我们需要获得OpenPyXL库的帮助。该库负责在Excel上进行读写操作,扩展名为xlsx,xlsm,xltm,xltx。
要安装OpenPyXL库,我们必须执行命令pip install openpyxl。这是因为python默认不附带OpenPyXL。之后,我们应该在代码中导入openpyxl,然后就可以与excel进行交互了。
要获取工作表中的所有值,首先,我们需要通过指定工作簿的路径来加载整个工作簿。这是通过load_workbook()方法实现的。接下来,我们需要借助活动方法在所有工作表中标识活动表。
接下来,我们需要使用max_row方法,该方法给出已占用行数的计数。请注意,此方法将与工作表级别对象一起使用。
并且我们需要使用max_column方法,该方法给出已占用列数的计数。请注意,此方法将与工作表级别的对象一起使用。
我们需要从1迭代到最大占用行数的计数,以遍历所有行。另外,我们需要从1迭代到最大已占用列数以遍历所有列。
最后,要检索所有值,我们需要行号和列号以及单元格方法的帮助(该方法接受行号和列号作为参数)。例如,要指向与第2行和第3列相对应的单元格,我们需要提及sheet.cell(row = 2,column = 3)。
wrkbk = load_workbook("C:\\work\\SeleniumPython.xlsx") # to identify the active sheet sh = wrkbk.active # identify the number of occupied rows sh.max_row # identify the number of occupied rows sh.max_column
编码实现可从excel获取所有值。
import openpyxl # load excel with its path wrkbk = load_workbook("C:\\work\\SeleniumPython.xlsx") # to get the active work sheet sh = wrkbk.active # to print the maximum number of occupied rows in console print(sh.max_row) # to print the maximum number of occupied columns in console print(sh.max_column) # to get all the values from the excel and traverse through the rows for r in range(1,max_row+1): # to traverse through the columns for c in range(1,max_column+1): # to get all the values print(sh.cell(row=r, column=c).value)