瀏覽器操作
driver
#coding=UTF-8
from selenium import webdriver
import time
if __name__ =='__main__':
driver = webdriver.Firefox(executable_path='D:\Mozilla Firefox')
#get方法等待頁面加載完成
driver.get('http://www.baidu.com')
time.sleep(2)
driver.get('http://www.taobao.com')
#退後
driver.back()
#向前
driver.forward()
#刷新
driver.refresh()
#最大化
driver.maximize_window()
#設置瀏覽器大小
driver.set_window_size()
#截圖
driver.get_screenshot_as_png()
#當前頁的標題、當前打開鏈接、當前頁面源代碼
print driver.title
print driver.current_url
print driver.page_source
xpath語法
XPATH
#/表示絕對路徑
#//相對路徑
#.當前層
#..上一層
#@表示屬性
#*表示通配符
#[]謂語,查詢條件
#函數text(),last()取結尾,starts-with()以什麼開始兩個參數,not()否定,contains()包含
//title[contains(text(),’X’)]
元素操作
#coding=UTF-8
from selenium import webdriver
import time
# input框
element = driver.find_element_by_id('user')
element.click()
element.clear()
element.submit()
element.send_keys('1234')
#默認顯示內容的input框,獲取屬性值(默認顯示內容)
element = driver.find_element_by_id('text')
print element.get_attribute('value')
#獲取text的內容
element = driver.find_element_by_class_name()
print element.text
#隱藏的元素,判斷是否顯示
element = driver.find_element_by_id('img_good')
print element.is_displayed()
#返回true/false
#解決:點擊頁面鏈接後跳轉,打開新的頁面跳轉
#獲取到鏈接跳轉的URL
#用driver.get()在當前頁打開鏈接
element = driver.find_element_by_xpath("//div[@id='link']/a")
link = element.get_attribute('href')
driver.get(link)
#select框
from selenium.webdriver.support.select import Select
import random
element = driver.find_element_by_xpath("//div[@id='select']/select/")
#實例化的時候需要參數(元素)
select = Select(element)
select.select_by_index(3)
time.sleep(2)
select.deselect_by_value('2')
time.sleep(2)
select.select_by_visible_text('BMW')
#隨機選select
index = random.randint(0,len(select.options)-1)
#redio
element = driver.find_element_by_xpath("//div[@id='radio']/input[@class='Audi']")
element.click()
time.sleep(2)
print element.is_selected()
#checkbox
#用XPath獲取到所有checkbox的集合
checkboxs = driver.find_element_by_xpath("//div[@id='checkbox']/input")
#遍歷勾選所有的CheckBox
for i in checkboxs:
i.click()