一、環境配置
- Chromedriver 下載及環境配置
- url:使用WebDriver在Chrome瀏覽器上進行測試時,需要從http://chromedriver.storage.googleapis.com/index.html網址中下載與本機chrome瀏覽器對應的驅動程序,驅動程序名為chromedriver;
- 解壓chromedriver,並將其mv 到/usr/local/bin下(目錄下必須要有對應版本的driver);
- 安裝selenium:執行 python -m pip install selenium
二、簡單的 python 程序
- 示例1:find_element_by_id()方法
# coding = utf-8
from selenium import webdriver
from time import sleep, ctime
import os
driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
driver.find_element_by_id("kw").send_keys("MacOS")
driver.find_element_by_id("su").click()
sleep(5)
driver.quit()
- 示例2: (ffind_element_by_xpath()方法)
# coding = utf-8
from selenium import webdriver
from time import sleep, ctime
import os
driver = webdriver.Chrome()
driver.get("https://dblp.uni-trier.de/search/")
driver.find_element_by_xpath('//*[@id="completesearch-form"]/input').send_keys(" zhou zhihua")
sleep(5)
driver.find_element_by_xpath('//*[@id="completesearch-authors"]/div/ul/li/a').click()
sleep(15)
driver.quit()
三、 webdriver 的一些用法
- 定位方法:selenium總共有八種定位方法
- By.id() 通過id定位
- By.name() 通過name 定位
- By.xpath() 通過xpath定位
- By.className() 通過className定位
- By.cssSelector() 通過CSS 定位
- By.linkText() 通過linkText
- By.tagName() 通過tagName
- By.partialLinkText() 通過匹到的部分linkText
- Chrome 元素查找
-
打開開發者工具
-
移動到對應元素上。注意,尋找 Browser中對應的高亮提示(如下圖1),實際上是在開發者工具Elements 視圖上移動光標行(圖2)
圖1 瀏覽器中高亮提示(隨開發者工具 Elements 視圖中光標行的移動) -
右鍵copy 元素 xpath 或其他定位參數
圖2 移動源代碼中光標行(尋找需要定位的元素) -
paste 到腳本中