Python+Selenium 脚本中的一些js的用法汇总

1、js来拖动滚动条

        js_="window.scrollTo(100,600);"
        driver.execute_script(js_)


2、js来获取input中的输入值


#第一种用jQuery的val方法:

  js = "return $('input').val();"

  driver.execute_script(js)

#第二种用jQuery的attr方法:

  js = "return $('input').attr('value');"

  driver.execute_script(js)
	 
	tt = driver.execute_script(js)

    print u"JS获取的用户信息:",tt

#第三种用selenium自带的方法:

  driver.find_element_by_tag_name('input').get_attribute('value')

3、js加弹出窗口提示信息


#弹出提示对话窗口,方便调试
	driver.execute_script("alert('输入框标红了!')")
4、js接受提示信息

#接受提示信息 
      from selenium.webdriver.common.alert import Alert 
    driver.switch_to_alert().accept()
confirm 元素类
t=driver.switch_to_alert()
print (t.text)
t.accept()

针对js  非div 元素的 alert 弹出事件 可以用:

from selenium.webdriver import ActionChains
alert = driver.switch_to_alert()
#模拟键盘Enter 键
ActionChains(driver).send_keys(Keys.ENTER).perform()



5、用来选择日期控件,输入框

js="$('#SystemDate').val('2017-07-21');"  
driver.execute_script(js

6、js选择复选框或取消、全选

#通过执行js,选中复选框
driver.execute_script('var chk =document.getElementById("c1"); chk.checked="checked"')
print driver.find_element_by_id("c1").is_selected()
time.sleep(3)
#通过执行js,取消选中复选框
driver.execute_script('var chk =document.getElementById("c1"); chk.checked=""')
print driver.find_element_by_id("c1").is_selected()
time.sleep(3)
#通过执行js,全选所有复选框,执行的js可以定义函数,通过调用函数全选
driver.execute_script('var checkboxs=document.getElementsByTagName("input");\
for (var i=0;i<checkboxs.length;i++) \
{	var e=checkboxs[i];\
if(e.type=="checkbox")\
{e.checked="checked"; \
} \
};')
time.sleep(3)
#判断是否全选,全选弹出“测试成功”,未全选弹出“测试失败”
driver.execute_script("function checkall()\{ var result=true; \  var checkboxs=document.getElementsByTagName('input'); 
\for (var i=0;i<checkboxs.length;i++) \{ var e=checkboxs[i]; \  if (e.type=='checkbox') \  {if (!e.checked) \  { result=false; \  continue; \  } \  
} \  } \  if(result) \  { alert('Error'); \  } \  else \  { alert('OK'); \  } \  } \  checkall();") 






  • 3
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值