目标
分别用Firefox和Chrome打开google主页,输入selenium进行搜索,3秒后,再输入nodejs进行搜索。
环境需求
1. javascript运行平台:nodejs
2. node module:
selenium-webdriver
在命令行中运行npm -g
install selenium-webdriver进行安装
3.
浏览器: Firefox 或 Chrome
Firefox版
首先,确认能在命令行中通过 start firefox启动Firefox浏览器,否则,windows用户需要将Firefox的路径加入系统变量中。
下载最新版本的selenium-server-standalone-2.39.0.jar的jar包,在命令行中启动selenium服务</p style="margin: 0 auto">
java -jar selenium-server-standalone-2.39.0.jar
在默认情况下,该服务会启用4444端口
创建js文件,如foo.js
1 var builder = new webdriver.Builder(). 2 usingServer(‘http://localhost:4444/wd/hub‘).//webdriver service port 3 withCapabilities({ 4 browserName: ‘firefox‘ 5 }); 6 7 driver.get(‘http://www.google.com‘); 8 9 driver.findElement(By.css(‘#lst-ib‘)).sendKeys(‘selenium‘);//type in ‘selenium‘ 10 driver.findElement(By.css(‘[name="btnK"]‘)).click(); //click "search" 11 12 driver.sleep(3000); //wait for 3 seconds 13 14 driver.findElement(By.css(‘#lst-ib‘)).clear(); //clear the input area 15 driver.findElement(By.css(‘#lst-ib‘)).sendKeys(‘nodejs\n‘);//type in "nodejs" and press enter
运行foo.js
node foo.js
则可以看到浏览器自动执行foo.js中的行为
Chrome版
下载chromedriver。 如果是windows,将压缩包里的exe文件解压后,把exe文件所在路径添加到的环境变量中
在命令行直接输入chromedriver启用服务,默认会打开9515端口
创建foo.js
1 var builder = new webdriver.Builder(). 2 usingServer(‘http://localhost:9515‘). 3 withCapabilities(webdriver.Capabilities.chrome()); 4 var driver = builder.build(); 5 6 driver.get(‘http://www.google.com‘); 7 8 driver.findElement(By.css(‘#lst-ib‘)).sendKeys(‘selenium‘); 9 driver.findElement(By.css(‘[name="btnK"]‘)).click(); 10 11 driver.sleep(3000); 12 13 driver.findElement(By.css(‘#lst-ib‘)).clear(); 14 driver.findElement(By.css(‘#lst-ib‘)).sendKeys(‘nodejs\n‘);
运行foo.js
node foo.js
则可以看到浏览器自动执行foo.js中的行为
可能出现的问题
如果出现代码无法解释的问题,请尝试更新selenium或浏览器