背景 實現 環境介紹 準備工作 如何編寫代碼
背景
通過selenium可以完成自動操作web的操作,解放你的雙手。 實現 環境介紹
mac
chrome版本 64.0.3282.140(正式版本)
selenium-java 3.8.1
chrome selenium driver 2.35 準備工作
首先需要下載Chrome或者其它瀏覽器的驅動程式。這裡以Chrome為例。
這裡給出淘寶鏡像。https://npm.taobao.org/mirrors/chromedriver/
在淘寶鏡像上下載2.35版本的selenium 的mac 驅動程式。
防止在工程目錄下或者其它地方。這裡我放在了工程目錄下。
在pom檔案裡增加selenium的配置。
<dependencies> <dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>3.8.1</version> </dependency> </dependencies>
編寫JAVA代碼如下。
import org.openqa.selenium.By;import org.openqa.selenium.chrome.ChromeDriver;/** * @author Arthur * @Date 2018/2/8 * @Decription: */public class SeleniumMainTest { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver",System.getProperty("user.dir")+"/chromedriver"); ChromeDriver driver = new ChromeDriver(); driver.get("https://www.taobao.com/"); driver.findElement(By.id("q")).click(); driver.findElement(By.id("q")).clear(); driver.findElement(By.id("q")).sendKeys("JAVA並發編程"); driver.findElement(By.cssSelector("button.btn-search.tb-bg")).click(); }}
效果就是開啟淘寶,並且自動搜尋“JAVA並發編程”。
如何編寫代碼
有朋友會問:沒有前台編程經驗的話,這種代碼怎麼寫呢。這裡筆者有一個工具推薦一下大家。如下圖。
通過螢幕錄製工具,錄製好整個web操作過程後,進行回放嘗試,沒有問題的話,就可以匯出代碼了。
可以匯出java、python等等。
當然對於前台比較熟悉的朋友,可以直接徒手擼代碼。
補充一下,可以使用Google瀏覽器直接擷取到頁面元素的xpath。
另外推薦一篇部落格,比較詳細的記錄著selenium元素定位的方法。https://www.cnblogs.com/TankXiao/p/5222238.html。