Use Selenium webdriver in Javascript
目標
分別用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或瀏覽器
轉載于:https://www.cnblogs.com/inkie/p/3596674.html
總結
以上是生活随笔為你收集整理的Use Selenium webdriver in Javascript的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Object C学习笔记13-Dicti
- 下一篇: 线段树hdu1754