Selenium_7.判断隐藏元素是否显示常用方法及javascript对自动化的一些操作

隐藏前
hide
点击visible text后
visilbe
对于需要点击按钮显示元素的常用方法

visible=browser.find_element_by_xpath('//*[contains(@value,"visilbe")]') 
visible.click()     #第一步点击 visible按钮

第一种is_displayed判断元素是否出现

'''第一种is_displayed判断元素是否出现'''
vip=browser.find_element_by_id("vip")
if vip.is_displayed():
    print("pass")
else:
    print("fail")

第二种:根据元素属性值去判断

'''第二种:根据元素属性值去判断
get_attribute("style")获取元素的属性
'''
"color: rgb(204, 0, 0); visibility: visible;"
style = vip.get_attribute("style")
if "visible" in  style:
    print("pass")
else:
    print("fail")

第三种:根据元素在页面出现的次数去判断结果*

'''第三种:根据元素在页面出现的次数去判断结果
 find_elements_by_xpath
'''
vip_ele_count=len(browser.find_elements_by_xpath('//*[contains(@style,"visible")]'))
print(vip_ele_count)
if vip_ele_count==1:
    print("pass")
else:
    print("fail")

第四种:通过js让vip元素显示
注意:通过js方法需要获取返回值,加一个return

visible = browser.find_element_by_xpath('//*[contains(@value,"visilbe")]')  #第一步点击 visible按钮
visible.click()
js = 'return document.getElementById("vip").style.visibility'  #需要获取返回值,加一个return
style = browser.execute_script(js)
print(style)

javascript对自动化的一些操作

'''js:javascript:可以获取浏览器提供的很多对象,并进行操作
   window:浏览器窗口
   location:当前页面的URL对象
   document:整个DOM树形结构
   打开浏览器-开发者工具-console控制台
'''

'''window:浏览器窗口'''
window.open("https://www.baidu.com")  新打开一个窗口
window.innerHeight
window.innerWidth
window.outerWidth
window.scrollTo(0,10000000000)  #滚动条
window.scrollTo(0,window.innerHeight)

'''location:当前页面的URL对象'''
location.reload() 刷新页面
location.href() 获取当前网址
location.assign("https://wwww.baidu.com") #更改当前url

'''document:整个DOM树形结构'''
#获取主题:
document.title  
点击元素:
document.getElementById("testid").click()
输入值:
document.getElementsByName("username")[0].value='12345678'
获取文本值:
document.getElementsByClassName("testclassname")[0].textContent
更改属性:
document.getElementById("vip").style.visibility="visible"
获取返回值:
return +js (在robot framework框架中使用js语句的时候,同样的语法格式)


'''窗口滚动条:'''
window.scrollTo(0,100000000)
window.scrollTo(0,document.body.scrollHeight)
window.scrollTo(document.body.scrollHeight,0)
非窗口类型滚动条:先找到这个元素,再用scrollTop去滑动
document.getElementById("styleShow").scrollTop='10000'
滚动条滑动到指定的元素:先找到这个元素,scrollIntoView
document.getElementsByClassName("feednews-header")[0].scrollIntoView(true)


'''js,高亮某个元素,'''
hidden=browser.find_element_by_xpath("/html/body/input[1]")
visible=browser.find_element_by_xpath("/html/body/input[2]")
browser.execute_script('arguments[0].style.border="3px solid red"',hidden)  #高亮某个元素
browser.execute_script('arguments[0].style.border="3px solid red";arguments[1].style.border="3px solid yellow"',hidden,visible)  #高亮多个元素
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值