python+selenium⾃动化测试-13使⽤JavaScript操作页⾯元素(含改变。。。
在webdriver脚本代码中执⾏JavaScript代码,来实现对页⾯元素的操作。此种⽅式主要⽤于解决在某些情况下,页⾯元素的.click()、.send_keys()⽆法⽣效等问题。JavaScript操作页⾯元素为selenium⾃动化进阶部分。下⾯以例⼦做简单介绍。
1、输⼊⽂本值
searchInputBoxJS=”ElementById(‘kw’).value=’⾃动化测试’;”#打开百度⾸页,在id为‘kw’的⽂本框(搜索框)内输⼊‘⾃动化测试’
ute_script(searchInputBoxJS)
2、点击按钮
searchButonJS=”ElementById(‘su’).click()”
ute_script(searchButonJS)
selenium怎么使用3、操作⽇期控件
startTime = w()
endTime = startTime + datetime.timedelta(days=3)
startDate = startTime.strftime('%Y-%m-%d %H:%M:%S')
endDate = endTime.strftime('%Y-%m-%d %H:%M:%S')
js_statime_dynamic ="$('#startDate').val('"+ startDate +"')"#向⽇期控件输⼊⽇期,send_keys()⽆法输⼊
js_endtime_dynamic ="$('#endDate').val('"+ endDate +"')"
4、处理内嵌div滚动条
jsTop = “ElementById(‘su’).scrollTop=10000”#拉到最上⾯
jsBottom = “ElementById(‘su’).scrollTop=0”#拉到最下⾯
jsLeft = “ElementById(‘su’).scrollLeft=10000”#拉到最左边
jsRight = “ElementById(‘su’).scrollLeft=0”#拉到最右边
5、改变元素的属性值
#到该元素所在位置
targetEle = self.find_element(*self.targetEle_loc)
# arguments[0]对应的是第⼀个参数,可以理解为python⾥的%s传参,与之类似。'.value'表⽰修改元素的value属性的值。
ute_script("arguments[0].value = '99';", targetTag)
js ="ElementById('goodsName').setAttribute('maxlength','100')"
ute_script(js)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。