美文网首页程序员我爱编程
selenium-webdriver -- 实现浏览器端的自动化

selenium-webdriver -- 实现浏览器端的自动化

作者: 神秘者007 | 来源:发表于2018-02-01 12:35 被阅读46次

    <pre>

    npmjs 包网址

    简介

    Selenium is a browser automation library. Most often used for testing web-applications, Selenium may be used for any task that requires automating interaction with the browser.

    Selenium是一个浏览器自动化库,通常用于测试Web应用程序,可用于任何需要自动与浏览器交互的任务(来自百度翻译

    使用方法 简单的 demo

    先在桌面创建项目文件夹

    cd Desktop
    mkdir selenium-webdriver-demo
    cd selenium-webdriver-demo
    //初始化项目
    npm init
    //一直回车就可以了
    
    

    通过 npm 进行安装 selenium-webdriver

    npm install selenium-webdriver
    
    

    你可以通过包网址中提供的浏览器插件链接自行下载自己所需要的,这里我下载的是 Firefox

    image.png
    • 下载好了之后将压缩包复制到自己的项目中,然后解压到自己的项目文件夹中,之后将压缩包删掉(避免出现不可知为问题),接下来就可以在项目中新建一个 e2e.js 文件

      编辑 e2e.js

    const {Builder, By, Key, until} = require('selenium-webdriver');
    
    let driver = new Builder()
        .forBrowser('firefox')
        .build();
    //这里我的打开网站以百度为例
    driver.get('http://www.google.com/');
    //name -> q 是google页面中 input 输入域的 name 属性的值
    //NBA  ->  指的是输入域填写的值
    driver.findElement(By.name('q')).sendKeys('NBA', Key.RETURN);
    //这个 title 是在Google中输入值搜素之后的页面的 title 的值 如果是对的话  就会执行下面的退出命令,不然是不会退出的
    //后面的 10000 是执行的时间如果觉得快的话可以适当的增加
    driver.wait(until.titleIs('NBA - Google Search'), 10000);
    //退出
    driver.quit();
    
    
    image.png
    • 这个时候就可以在命令行中运行 e2e.js 文件了,注意有个前提是你的电脑上必须安装了 火狐浏览器,不然是会报错的
    node e2e.js
    
    

    接下来他便会自动打开电脑上的火狐浏览器 -> 打开 www.baidu.com -> 输入 “小川” -> 进行搜索 -> 搜索之后因为 title 是对应的所以就会再自动的关掉火狐浏览器

    image.png

    相关文章

      网友评论

        本文标题:selenium-webdriver -- 实现浏览器端的自动化

        本文链接:https://www.haomeiwen.com/subject/alldzxtx.html