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

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

    # 获取列表数据多列内容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

展示结果

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

  1. python+selenium自动化脚本例子

    import time from selenium import webdriver from selenium.webdriver.common.keys import Keys # 键盘 from ...

  2. chrome 控制台信息获取 python_【python+selenium自动化】设置Chrome启动参数

    起因:直接用selenium的webdriver启动chrome,会弹出"Chrome正在受到自动软件的控制",并且窗口较小,是因为chrome没有加载任何配置 解决:点进sele ...

  3. Python+selenium 自动化-读取excel记录的脚本执行登陆操作实战演示

    我们可以用 excel 来记录自动化,然后读取 excel 来执行命令,excel 可以很方便直观的管理我们录入的自动化.下面给大家演示一下 Python+selenium 自动化的实例,读取 exc ...

  4. Python+Selenium自动化测试脚本(入门)

    前言 最近在学习Python+selenium自动化测试,计划把公司已有一套自动化测试框架(UIAutomation+C#)用Python+Selenium框架实现一遍.先拿了一个csdn的登录页面练 ...

  5. Python + selenium自动化工具 + 滑块验证码+点选验证码,实现模拟登录“中国铁路网12306”

    文章目录 一.模拟登录"中国铁路网12306 1.引入库 2.初始化 3.将点选验证码图片,通过人工打码,返回目标像素位置(json格式). 4.点选验证码位置得到后,需要鼠标左击进行模拟人 ...

  6. python自动化办公都能做什么菜-python+selenium自动化(一)之环境搭建

    一.环境选择 python版本:python3.7(64位)下载地址:https://www.python.org/downloads/ (推荐使用官方下载) selenium版本:selenium3 ...

  7. Python+selenium 自动化-mac下安装配置chrome驱动方法

    我的 Python 版本有两个,先通过 which 看一下对应版本的位置. 然后找到 python 安装目录里的 bin 文件夹,把对应的驱动放里面就好了. 如果不知道怎么匹配对应 chrome 版本 ...

  8. Python+selenium 自动化-基本环境搭建,调用selenium库访问百度查询天气实例演示

    Python+selenium 自动化 第一章:基本环境搭建 ① 安装 selenium 库 ② 下载对应版本的浏览器驱动 ③ 调用百度查天气演示 第一章:基本环境搭建 ① 安装 selenium 库 ...

  9. Python接口自动化脚本业务框架总概(一)

    目录 接口自动化框架目录 基础类封装概览 基础类封装方法详解 Log.py文件 Request.py文件 Python是目前主流的接口自动化脚本语言之一. 本专栏将联系业务介绍使用python接口自动 ...

最新文章

  1. 从Excel中导入数据时,提示“未在本地计算机上注册“Microsoft.ACE.OLEDB.12.0”提供程序”的解决办法...
  2. LeCun自曝使用C语言23年之久,2年前才上手Python,还曾短暂尝试Lua
  3. Android 强烈推荐:程序员接私活那点事
  4. uwsgi指定python路径_uWsgi服务器(2)--安装配置
  5. 开发经验分享_06_前端开发技巧
  6. SQLserver2012 修改数据库架构
  7. linux内存管理之uboot第一步
  8. 【SSTFlashFlex51单片机烧录软件的使用方法】
  9. ISO-国际标准化组织
  10. PhotoShop2018安装与破解教程
  11. spark机器学习 源码解析及原理分析
  12. TeamViewer 如何注册账户?
  13. 世界上第一个徒步环球旅行的人
  14. jqgrid 列排序
  15. [Tensorflow]L2正则化和collection【tf.GraphKeys】
  16. Unity 调用Android手机触屏事件
  17. iOS底层原理:weak的实现原理
  18. 遭遇Trojan.DL.Win32.Autorun.yuz,Trojan.Win32.Inject.gh,Trojan.Win32.Agent.zsq等
  19. 区块链日记——【译】用Java创建你的第一个区块链-part2:可交易
  20. CentOS7 安装 Eclipse Che

热门文章

  1. HUSTOJ特判程序Special Judge使用方法整理
  2. 如何用一颗芯片实现5V转正负12V
  3. Android 自定义Log 多模式
  4. 求职简历模板百度云网盘分享
  5. sublime_text 3安装Emmet时出现PyV8警告
  6. java 二叉树的最小深度详解
  7. 【超图+CESIUM】【基础API使用示例】41、超图|CESIUM - 特效-雪景设置
  8. 看完这篇文章,保你学会C语言while循环与 do while 循环
  9. OPENCV手势识别抓取图片
  10. 基于web得数字媒体资源库系统