博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
selenium启动火狐浏览器_selenium之nodejs入门使用
阅读量:5754 次
发布时间:2019-06-18

本文共 2003 字,大约阅读时间需要 6 分钟。

888627b91caaa5ee658f91a360638d88.png

selenium详解见此篇:https://www.fenxianglu.cn/article/343

有了对selenium文档的了解,这里还需要做一个hello world演示,不然不知道怎么跑起来的,心里总觉得不舒服,所以下面介绍下基于nodejs的selenium启动使用

首先nodejs是要安装的,这个直接到 https://nodejs.org/en/ 上下载安装即可

然后创建 test/index.js 目录文件

根据selenium写官网下载页的指示,这里需要下载JavaScript的依赖包

下载地址:https://www.npmjs.com/package/selenium-webdriver

npm下载

test> npm install selenium-webdriver --save

安装完成之后还需要下载浏览器驱动器,这里以firefox为例,下载操作系统对应版本,然后放到test目录下即可

相应浏览器驱动器列表

浏览器 可执行文件
Chrome chromedriver(.exe) 64位的需要度娘找解决方案
Internet Explorer IEDriverServer.exe
Edge MicrosoftWebDriver.msi
Firefox geckodriver(.exe)
Safari safaridriver

index.js对应内容如下:

const { Builder, By, Key, until } = require("selenium-webdriver");(async function example() {
let driver = await new Builder().forBrowser("firefox").build(); // 以firefox浏览器为目标构建器 try {
await driver.get("https://www.baidu.com"); await driver.findElement(By.className("s_ipt")).sendKeys("selenium"); // 找到输入框,填充内容 await driver.findElement(By.className("s_btn")).sendKeys(Key.ENTER); // 触发enter键,执行搜索 await driver.wait(until.titleIs("百度一下,你就知道"), 1000); // 判断title是否为“百度一下,你就知道”,不是则报错,是则继续执行 console.log(222) } finally {
// await driver.quit(); // 退出浏览器 }})();

执行脚本

test> node index.js

执行后会自动打开火狐浏览器,然后打开百度首页,自动填充搜索内容,进入搜索结果页面。

3e977d06e844d7a3f5432160c2bf577e.png

send_keys相关使用如下:

// 输入框输入内容driver.find_element_by_id("kw").send_keys("seleniumm")sleep(10)// 删除多输入的一个 mdriver.find_element_by_id("kw").send_keys(Keys.BACK_SPACE)sleep(10)// 输入空格键+“教程”driver.find_element_by_id("kw").send_keys(Keys.SPACE)driver.find_element_by_id("kw").send_keys("教程")sleep(10)// ctrl+a 全选输入框内容driver.find_element_by_id("kw").send_keys(Keys.CONTROL, 'a')sleep(10)// ctrl+x 剪切输入框内容driver.find_element_by_id("kw").send_keys(Keys.CONTROL, 'x')sleep(10)// ctrl+v 粘贴内容到输入框driver.find_element_by_id("kw").send_keys(Keys.CONTROL, 'v')sleep(10)// 通过回车键来代替单击操作driver.find_element_by_id("su").send_keys(Keys.ENTER)sleep(10)

其他API请查看 selenium_webdriver 官方使用文档:https://www.selenium.dev/selenium/docs/api/javascript/index.html

欢迎:阅读原文

转载地址:http://pxdkx.baihongyu.com/

你可能感兴趣的文章
微信小程序开发 -- 点击右上角实现转发功能
查看>>
问题解决-Failed to resolve: com.android.support.constraint:constraint-layout:1.0.0-alpha7
查看>>
与MS Project相关的两个项目
查看>>
[转载]ASP.NET MVC Music Store教程(1):概述和新项目
查看>>
使用 SharpSvn 执行 svn 操作的Demo
查看>>
js函数大全
查看>>
iOS app exception的解决方案
查看>>
Mongodb启动命令mongod参数说明
查看>>
TCP&UDP压力测试工具
查看>>
oracle 导入数据
查看>>
Android 最简单的自定义Dialog之一
查看>>
磨刀不误砍柴 - 配置适合工作学习的桌面环境
查看>>
Java笔记-反射机制(一)
查看>>
redux v3.7.2源码解读与学习之 applyMiddleware
查看>>
【React】为什么我不再使用setState?
查看>>
Git原理与高级使用(3)
查看>>
从JDK源码看Writer
查看>>
Express 结合 Webpack 实现HMRwi
查看>>
基于protobuf的RPC实现
查看>>
坚信每个人都能成为品牌
查看>>