selenium庫是一個遊覽器的自動工具html
這個庫對不少語言都支持好比 JAVA/Python/c#python
最開始接觸也就是由於在github上找了下搶票軟件,有我的用python寫,實際也就是模擬人工刷票,只不過它是利用這個庫而後半自動刷票git
可是bug還挺多的,刷不了幾回就停了。github
而後就去了解了一下這個庫,今天學習使用了一下。web
以前我利用Jsoup寫的爬蟲去爬了一下POJ的解題代碼,到最後的解題數也只有1100道,主要就是爬的是博客園的代碼,博客園的不少代碼前面都有行數,我用正則表達式去掉了一些,可是有些仍是會錯誤的去掉其餘的,也由於正則匹配寫的不是太好。正則表達式
這個selenium其實用來寫爬蟲仍是很方便的一個東西,由於Jsoup只能爬取靜態網頁,而不能爬取動態網頁和一些複雜的東西。chrome
1、c#
去官網下載所須要的selenium庫和你遊覽器所對應的驅動版本工具
好比說chrome遊覽器你就要去找chromedrive (這兩個的版本有個對應表,查到對應表而後下載好比說chrome64+的chrome就是2.35)學習
2、
一個簡單的例子
1 public class test { 2 public static void main(String[] args) { 3 //打開chromedriver這個程序. 4 System.setProperty("webdriver.chrome.driver","H:\\12306\\chromedriver.exe"); 5 WebDriver webdriver = new ChromeDriver(); //webdrive就是對應的這個遊覽器。 6 7 WebElement kw = webDriver.findElement(By.id("kw")); 8 kw.sendKeys("selenium");//填寫信息 9 WebElement su = webDriver.findElement(By.id("su"));//By.id是定位元素的id,也能夠是tagname之類的。 10 su.click(); 11 //點擊按鈕 12 List<WebElement> s = webdriver.findElements(By.xpath("/html/body/div[1]/div[1]/div")); 13 //這個經過xpath來定位元素 14 } 15 }
xpath即爲XML路徑語言,能夠用來定位網頁裏的元素的位置,用起來很強大
在chrome在F12那裏導出xpath的路徑。
一箇中文的webdrive的網站