在自动化中,有时我们会遇到html表格,需要对表格添加的内容判断其正确性,那么怎么才能取得表格数据呢?
1.通过selenium定位方式(id,name,xpath等方式)定位table标签
定义基类base
# -*- coding: utf-8 -*-
from import WebDriverWait
class PageMethods(object):
def __init__(self, driver):
= driver
# = url
def find_element(self, *loc):
try:
WebDriverWait(, 10).until(lambda driver: driver.find_element(*loc).is_displayed())
return .find_element(*loc)
except:
print("%s 页面中不能找到 %s 元素"%(self, loc))
此处调用上面类中的find_element方法
table_in = (By.CLASS_NAME, 'ttab')# 查询结果的内部table
# 进入table
def in_table(self):
self.find_element(*self.table_in)
2.获取总行数及总列数(也就是获取tr或者td标签的个数)
# 获得table的行数
def get_tablerows(self):
table = self.find_element(*self.table_in)
return table.find_elements_by_tag_name("tr")
# 获得table的列数
table_rows = self.get_tablerows()
test_cels = table_rows[0].find_elements_by_tag_name('td')
3.获取单个cell值
table_text_rm = table_rows[rownum].find_elements_by_tag_name('td')[1].text