selenium webdriver ——执行javascript代码
在代码中import org.openqa.selenium.JavascriptExecutor;就可以使用executeScript、executeAsyncScript这两个方法了
executeScript是同步方法,用它执行js代码会阻塞主线程执行,直到js代码执行完毕;
executeAsyncScript方法是异步方法,它不会阻塞主线程执行。
executeScript方法如果有返回值,有以下几种情况:
如果返回一个页面元素(document element), 这个方法就会返回一个WebElement
如果返回浮点数字,这个方法就返回一个double类型的数字
返回非浮点数字,方法返回Long类型数字
返回boolean类型,方法返回Boolean类型
如果返回一个数组,方法会返回一个List<Object>
其他情况,返回一个字符串
如果没有返回值,此方法就会返回null
executeScript实例:
import org.openqa.selenium.By;
import org.openqa.selenium.JavascriptExecutor;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver; /**
* @author Hjianhui
* JavaScript.java 2016-08-01
*
*/
public class testJS{ public static void main(String[] args) {
// TODO Auto-generated method stub
//利用webdriver键入搜索关键字
WebDriver driver = new FirefoxDriver();
try{
driver.get("http://www.baidu.com"); JavascriptExecutor driver_js= ((JavascriptExecutor) driver);
//利用js代码键入搜索关键字
driver_js.executeScript("document.getElementById(\"kw\").value=\"yeetrack\""); //利用js代码取出关键字
String keyword = (String)driver_js.executeScript("var input = document.getElementById(\"kw\").value; return input");
System.out.println(keyword);
driver.findElement(By.id("su")).click();
}catch (Exception e){
e.printStackTrace();
}
driver.quit();
}
}
selenium webdriver ——执行javascript代码的更多相关文章
- 转:selenium webdriver 执行javascript代码
在用selenium webdriver 编写web页面的自动化测试代码时,可能需要执行一些javascript代码,selenium本身就支持执行js,我们在代码中import org.openqa ...
- selenium webdriver 执行Javascript
@Test public void testElementByID() { //通过JS获取页面元素 driver.get(url); driver.manage().window().maximiz ...
- Selenium WebDriver之JavaScript
WebDriver提供了方法来同步/异步执行JavaScript代码,这是因为JavaScript可以完成一些WebDriver本身所不能完成的功能,从而让WebDriver更加灵活和强大. 本文中所 ...
- python中执行javascript代码
python中执行javascript代码: 1.安装相应的库,我使用的是PyV8 2.import PyV8 ctxt = PyV8.JSContext() ctxt.enter() ...
- C#执行javascript代码
最近在做网站自动登陆小工具,遇到技术屏障.密码在submit时会使用js进行加密.这时我需要模拟这个加密过程,想到使用C#执行javascript代码. 对于执行javascript代码,纯代码方式使 ...
- JAVA中执行JavaScript代码并获取返回值
JAVA中执行JavaScript代码并获取返回值 场景描述 实现思路 技术要点 代码实现 测试方法 运行结果 改进空间 场景描述 今天在CSDN上偶然看到一个帖子对于一段字符串 “var p=‘xx ...
- Java执行JavaScript代码
Java执行JavaScript代码 这篇文章主要为大家详细介绍了Java执行JavaScript代码的具体操作方法,感兴趣的小伙伴们可以参考一下 我们要在Java中执行JavaScriptMetho ...
- UWP 在 WebView 中执行 JavaScript 代码(用于模拟用户输入等)
UWP 中使用 WebView 时可以在网页中额外执行一些代码.于是你几乎可以在网页上做任何事情,那些你可以在浏览器控制台中做的事情. 本文将介绍做法. 本文内容 准备环境 执行 JavaScript ...
- UWP 在 WebView 中执行 JavaScript 代码(用于模拟用户输入等) - walterlv
原文:UWP 在 WebView 中执行 JavaScript 代码(用于模拟用户输入等) - walterlv UWP 在 WebView 中执行 JavaScript 代码(用于模拟用户输入等) ...
随机推荐
- hdu1517找规律
挺像巴什博弈的,直接递推就能找到规律了,从2开始到9,s win,10到18,o win,18到162,s win,一直向下推进 #include<map> #include<set ...
- WEB前端性能优化常见方法
1.https://segmentfault.com/a/1190000008829958 (WEB前端性能优化常见方法) 2..https://blog.csdn.net/mahoking/arti ...
- ORACLE导入导出工具的使用
ORACLE导出工具exp的使用: 1.将数据库TEST(远程的数据库必须为连接标志符)完全导出,用户名system,密码manager,导出到D:\daochu.dmp中: exp s ...
- SGU 219 Synchrograph tarjian找环,理解题意,图论 难度:3
http://acm.sgu.ru/problem.php?contest=0&problem=219 题目大意: 如果指向某个点的边权全都为正数,那么这个点就是可点燃的,点燃操作把入弧权值- ...
- python3 中文乱码,UnicodeEncodeError: 'latin-1' codec can't encode characters in position 10-13: ordinal not in range(256)
将其源代码复制下来运行之后,报了下面这个错误: UnicodeEncodeError: 'latin-1' codec can't encode characters in position 9-13 ...
- Pale Moon 苍月浏览器 24.0.1 发布
火狐浏览器知名修改版—苍月浏览器Pale Moon今天发布24.0.1版本,该版本基于Firefox 最近更新的24.0.1正式版. 下载地址: 32位下载:http://relmirror.pale ...
- kubernetes1.7新特:kubectl支撑中文字符集
背景介绍 在Kubernetes架构图中可以看到,节点(Node)是一个由管理节点委托运行任务的worker. 它能运行一个或多个Pods,节点(Node)提供了运行容器环境所需要的所有必要条件,在K ...
- Github使用.gitignore文件忽略不必要上传的文件 (转)
原文地址: https://blog.csdn.net/gjy211/article/details/51607347 常用编程语言及各种框架平台下的通用 .gitignore 文件 http ...
- 20155234 2016-2017-2 《Java程序设计》第8周学习总结
20155234 2016-2017-2 <Java程序设计>第8周学习总结 教材学习内容总结 java.util.loggging包提供了日志功能相关类与接口. 使用日志的起点是Logg ...
- IO流常规操作
IO流 IO就是输入输出,IO设备在计算机中起着举足轻重的作用,IO流也就是输入输出流,用来交互数据,程序和程序交互,程序也可以和网络等媒介交互. 一.IO流的分类 要分类,肯定得站得不同角度来看这个 ...