selenium 调用JavaScript代码

调用JavaScript方法有两种:

execute_script():

方法解释:是同步方法,用它执行js代码会阻塞主线程执行,直到js代码执行完毕。

execute_script()方法如果有返回值,会有以下几种情况:

  • 返回一个页面元素(document element),这个方法就会返回衣蛾WebElement
  • 返回浮点数数字,这个方法就返回一个double类型的数字
  • 返回非浮点数字,方法返回long类型数字
  • 返回blloean类型,方法返回Boolean类型
  • 返回一个数组,方法发挥一个List类型
  • 其他情况,返回一个字符串

execute_async_script():

方法解释:是异步方法,它不会阻塞主线程执行

实例:

#调用JavaScript代码
#coding utf-8
from selenium import webdriver
from time import sleep #访问百度
driver = webdriver.Firefox()
driver.get("http://www.baidu.com") #设置浏览器窗口大下
driver.set_window_size(500,800) #搜索
driver.find_element_by_id('kw').send_keys('python selenium')
driver.find_element_by_id('su').click()
sleep(2) #通过javascript设置浏览器窗口的滚动条位置
js = "window.scrollTo(100,450);"
driver.execute_script(js) #执行JavaScript代码
#driver.execute_async_script()
sleep(2) driver.quit()

  

最新文章

  1. 读取iOS通讯录
  2. Linux匿名管道与命名管道
  3. VS2013密匙
  4. 修改SSH端口为21
  5. MySQL中间层 Atlas
  6. jrae源代码解析(二)
  7. 一个简单的webserver
  8. CSS(一) 引入方式 选择器 权重
  9. 02 jmeter性能测试系列_JForum测试论坛的环境搭建
  10. MTK 音量加减键修改为默认控制媒体音量
  11. Oracle面试题(基础篇)
  12. IntelliJ IDEA像Eclipse一样打开多个项目(转)
  13. ios mac 对照片进行JPEG压缩
  14. RecyclerView错误
  15. Android O 可以上网 提示无法访问网络
  16. Java中字符转int
  17. Scrapy源码注解--CookiesMiddleware
  18. C++ 实现Biginteger
  19. centos6.4或者6.5使用yum的elrepo源升级内核
  20. MongoDB基础学习(一) MongoDB概念解析

热门文章

  1. Linux上查找最大文件的 3 种方法
  2. docker练习-容器和服务
  3. SpringBoot介绍与使用
  4. MySQL 持久化保障机制-redo 日志
  5. vue不常用到的v-model修饰符
  6. 让vue-router渲染为指定的标签
  7. Faster Rcnn训练自己的数据集过程大白话记录
  8. python如何计算程序(代码块)的运行时间?
  9. 基于mysql的单据号生成(前缀+日期+自增id+后缀)
  10. Scrapy解析器xpath