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

来源:互联网 发布:python量化课程视频 编辑:程序博客网 时间:2024/05/22 14:15

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();") 






原创粉丝点击