300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > Python+Selenium自动化脚本实现列表信息的多列内容获取

Python+Selenium自动化脚本实现列表信息的多列内容获取

时间:2021-09-29 03:37:01

相关推荐

Python+Selenium自动化脚本实现列表信息的多列内容获取

自动化脚本实现列表信息的多列内容获取(列数目可变)

取出多列信息后显示为一个列表,根据列数目进行列表的拆分,最终展示为多个子列表

# 获取列表数据多列内容def get_list_multicolumn(self, table_tbody, *column):""":param table_tbody: 表格定位路径:param column:获取某几列元素:param doc:备注信息:return:将列内容返回至列表中"""# 定位表格路径element = self.driver.find_element(By.XPATH, table_tbody)# 获取每一行的数据trtable_tr_list = element.find_elements(By.TAG_NAME, "tr")time.sleep(0.5)# 设置初始化列表table_list = []finally_list = []# 获取列表数据total_numbers = len(table_tr_list)if total_numbers >= 1:for i in range(1, total_numbers + 1):# len(*column)可变参数的长度for j in range(len(*column)):new_column = column[0][j]table_td_list = self.driver.find_elements(By.XPATH, table_tbody + '//tr[' + str(i) + ']//td[' + str(new_column) + ']')[0].texttable_list.append(table_td_list)# 通过可变参数的长度拆分列表,展示为多个子列表for k in range(0, len(table_list), len(*column)):new_list_1 = table_list[k: k + len(*column)]finally_list.append(new_list_1)return finally_listelse:ret_info = "列表数据为空"return ret_info

# @unittest.skip("暂时跳过")def test_e_leave_application_alldatas_page1(self):"""请假申请:请假类型:return:"""# 调用函数,可变参数为:3、4、5、7、8列ret = DOP(self.driver).get_leave_list_multicolumn_applyData(DOL.leave_table_tbody_loc, 3, 4, 5, 7, 8)print(ret)time.sleep(0.5)

最终结果展示

屏蔽列表拆分

# 获取列表数据多列内容def get_list_multicolumn(self, table_tbody, *column):""":param table_tbody: 表格定位路径:param column:获取某几列元素:param doc:备注信息:return:将列内容返回至列表中"""# 定位表格路径element = self.driver.find_element(By.XPATH, table_tbody)# 获取每一行的数据trtable_tr_list = element.find_elements(By.TAG_NAME, "tr")time.sleep(0.5)# 设置初始化列表table_list = []finally_list = []# 获取列表数据total_numbers = len(table_tr_list)if total_numbers >= 1:for i in range(1, total_numbers + 1):# len(*column)可变参数的长度for j in range(len(*column)):new_column = column[0][j]table_td_list = self.driver.find_elements(By.XPATH, table_tbody + '//tr[' + str(i) + ']//td[' + str(new_column) + ']')[0].texttable_list.append(table_td_list)# 屏蔽掉列表拆分# 通过可变参数的长度拆分列表,展示为多个子列表# for k in range(0, len(table_list), len(*column)):#new_list_1 = table_list[k: k + len(*column)]#finally_list.append(new_list_1)return table_listelse:ret_info = "列表数据为空"return ret_info

展示结果

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。