关于selenium:selenium之nodejs入门使用

52次阅读

共计 1832 个字符,预计需要花费 5 分钟才能阅读完成。

selenium 详解见此篇:https://www.fenxianglu.cn/art…

有了对 selenium 文档的理解,这里还须要做一个 hello world 演示,不然不晓得怎么跑起来的,心里总感觉不难受,所以上面介绍下基于 nodejs 的 selenium 启动应用

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

而后创立 test/index.js 目录文件

依据 selenium 写官网下载页的批示,这里须要下载 JavaScript 的依赖包

下载地址:https://www.npmjs.com/package…

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

执行后会主动关上火狐浏览器,而后关上百度首页,主动填充搜寻内容,进入搜寻后果页面。

send_keys 相干应用如下:

// 输入框输出内容
driver.find_element_by_id("kw").send_keys("seleniumm")
sleep(10)
 
// 删除多输出的一个 m
driver.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/sele…

欢送关注:https://www.fenxianglu.cn/

正文完
 0