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目录下即可

相应浏览器驱动器列表

浏览器可执行文件
Chromechromedriver(.exe) 64位的须要度娘找解决方案
Internet ExplorerIEDriverServer.exe
EdgeMicrosoftWebDriver.msi
Firefoxgeckodriver(.exe)
Safarisafaridriver

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) // 删除多输出的一个 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/sele...

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