使用环境:
Python/selenium
wqrfnium会自动生成一个excel表,并打印表位置,您需要把您selenium脚本中经常容易因前端变化导致定位失败的元素放入此表中
每行一个元素,列含义:
元素标识-icon:用户自行输入(如:seach_input/my_username),之后脚本中getelement方法中需要传入driver和icon
默认定位方式-tmp_find_method:用户需自行输入初始(如id/name等),之后脚本会自行维护无需再度关心
默认定位值-tmp_find_value:用户需自行输入初始(如username/password/kw/login等),之后脚本会自行维护无需再度关心
下标-index:用户自行输入初始(如0/1/2/3....),之后脚本会自行维护无需再度关心
原始html标签内容-html_element-:系统自动生成,无需关心
使用方法-exlce:
1.示范代码:
from selenium import webdriverfrom wqrfnium.wqrfnium import *begin_wqrf('./MyElements.xls')driver = webdriver.Chrome()driver.get("http://www.baidu.com/")time.sleep(2)getelement(driver,"seachinput").send_keys('xiaozhu')
2.首次运行一下,会自动生成存放elements.xls文件,会打印出此文件地址(begin_wqrf()为初始化语句,可传入自定义的excel表路径,若不写则会在默认位置生成)
3.手动进入elements.xls,把要定位的页面元素手动输入定位方式和定位值,粘贴到excel表中,每行一个元素
第一列:元素的标识,用于之后代码中直接调用该元素,如示范代码中的“seachinput”
第二列:元素的默认定位方式,如id
第三列:元素的默认定位值,如 kw
第四列:元素的下标,一般都写0,算法获取元素是获取符合要求的所有元素
第五列:元素的html源码标签,无需注意,由系统自动生成。
4.在代码中调用getelement方法,传入driver和元素标识即可,后续前端页面的各种更改,这个定位代码都会成功找到
网友评论