1. 程式人生 > >webdriver API:瀏覽器的控制

webdriver API:瀏覽器的控制

  • 瀏覽器操作

最大化瀏覽器:maximize_window()

設定瀏覽器寬高:set_window_size(480,800)

前進:forward()

後退:back()

退出瀏覽器:quit()

from selenium import webdriver
from time import sleep

dr = webdriver.Firefox()
dr.get("https://www.baidu.com")
dr.set_window_size(600,800)
sleep(1)
dr.maximize_window()

dr.quit()

 

輸入:send_keys()

清除:clear()

點選:click()

from selenium import webdriver
from time import sleep

dr = webdriver.Firefox()
dr.get("https://www.baidu.com")


dr.find_element_by_name('wd').send_keys('hello')
sleep(1)

dr.find_element_by_name('wd').clear()
sleep(1)

dr.find_element_by_xpath('//input[@maxlength="255"]').send_keys('
selenium') sleep(1)

 

獲取輸入框尺寸:size    //注意size不帶括號

返回文字資訊:text

返回元素屬性:get_attribute()

返回元素的結果是否可見:is_displayed()     //可見返回true,不可見返回false

# -*- coding: UTF-8 -*-
from selenium import webdriver

dr = webdriver.Firefox()
dr.get("https://www.baidu.com")

s = dr.find_element_by_id('
kw').size print s t = dr.find_element_by_partial_link_text('About').text print t n = dr.find_element_by_id('kw').get_attribute('name') print n i = dr.find_element_by_link_text('新聞').is_displayed() print i dr.quit()

 

 

  • 滑鼠事件

模擬滑鼠行為需要匯入ActionChains類:from selenium.webdriver.common.action_chains import  ActionChains

滑鼠懸停:ActionChains(驅動).move_to_element(懸停元素).perform()

from selenium import webdriver
from time import sleep
from selenium.webdriver.common.action_chains import  ActionChains

dr = webdriver.Firefox()
dr.get("https://www.baidu.com")

sz = dr.find_element_by_css_selector('a.pf:nth-child(8)')
ActionChains(dr).move_to_element(sz).perform()
sleep(5)

滑鼠右鍵:ActionChains(驅動).context_click(右鍵元素).perform()

滑鼠雙擊:ActionChains(驅動).double_click(雙擊元素).perform()

 

  • 鍵盤事件

模擬鍵盤行為需要匯入Keys類:from selenium.webdriver.common.keys import Keys

輸入內容:send_keys('內容')

刪除一個字元:send_keys(Keys.BACK_SPACE)

空格:send_keys(Keys.SPACE)

組合鍵:send_keys(Keys.CONTROL,'a')      //a全選,c複製,v貼上,x剪下

回車鍵:send_keys(Keys.ENTER)

回退鍵ESC:send_keys(Keys.ESCAPE)

 

  • 獲得驗證資訊

 獲取當前url:current_url

獲取當前頁面標題:title

獲取文字資訊:text

dr = webdriver.Firefox()
dr.get("https://passport.bilibili.com/login")

nowurl = dr.current_url
print nowurl

t = dr.title
print t n = dr.find_element_by_xpath('//div[@class="input-box"]/ul/li[5]/a').text print n