selenium之滑鼠鍵盤操作

2022-03-23 03:17:52 字數 3578 閱讀 9243

1、滑鼠操作

關於滑鼠的操作封裝在actionchains()類裡,所以需要提前匯入actionchains()類;perform() 執行所有 actionchains 中儲存的行為(接在actionchains類之後)

匯入actionchains 類:from selenium.webdriver import actionchains

格式:actionchains(瀏覽器).[行為(需要操作的元素)].perform()

1.1、滑鼠右擊與雙擊操作(單擊即click())

右擊操作:actionchains(瀏覽器).context_click(需要右擊的定位好的元素).perform()

雙擊:actionchains(瀏覽器).double_click(需要右擊的定位好的元素).perform()

**例項:

from selenium import

webdriver

from selenium.webdriver import

actionchains

import

time

#建立乙個瀏覽器物件

driver =webdriver.firefox()

#設定瀏覽器最大化

driver.maximize_window()

#右擊操作:

#url = '

'driver.get(url)

#定位元素loge元素

d = driver.find_element_by_css_selector('

#s_lg_img')

#對元素進行滑鼠右擊操作

'''actionchains(driver):使用動作鏈類對瀏覽器進行操作

context_click(d):使用動作鏈類對定位好的d元素進行右擊

perform():執行動作鏈類的操作

'''actionchains(driver).context_click(d).perform()

time.sleep(2)

#雙擊操作:

#定位元素

ee = driver.find_element_by_link_text('新聞'

)#雙擊元素

actionchains(driver).double_click(ee).perform()

time.sleep(2)

#關閉瀏覽器

driver.quit()

1.2、滑鼠懸停操作

懸停:actionchains(driver).move_to_element(元素).perform()

#

匯入相關的模組

from selenium import

webdriver

from selenium.webdriver import

actionchains

import

time

#建立瀏覽器物件、設為最大化螢幕

driver =webdriver.firefox()

driver.maximize_window()

#訪問京東

url = '

'driver.get(url)

#定位需要滑鼠懸停單個元素

xuan = driver.find_element_by_css_selector('

li.cate_menu_item:nth-child(1) > a:nth-child(1)')

#懸停操作

actionchains(driver).move_to_element(xuan).perform()

time.sleep(3)

#獲取一組懸停的元素,並且乙個個遍歷

xuans_list = driver.find_elements_by_css_selector('

li.cate_menu_item')

#遍歷懸停操作

for el in

xuans_list:

actionchains(driver).move_to_element(el).perform()

time.sleep(2)

#關閉瀏覽器

driver.quit()

2、鍵盤操作(按鍵名稱需要大寫、組合鍵裡的引數需要小寫)

keys()類提供了鍵盤上幾乎所有按鍵的方法,原理與滑鼠相似;使用鍵盤操作前需先導入keys()類,然後配合send_keys()使用

匯入keys()類:from selenium.webdriver.common.keys import keys

格式:元素.send_keys(keys.鍵盤名稱) 或組合鍵方式:元素.send_keys(keys.control,'x')

#

匯入需要的模組

from selenium import

webdriver

from selenium.webdriver.common.keys import

keys

import

time

#建立瀏覽器物件設定為最大化

#定位輸入框

srk = driver.find_element_by_id('kw'

)#輸入框輸入內容

srk.send_keys('

周潤發'

)time.sleep(1)

#全選輸入框內容

srk.send_keys(keys.control,'a'

)time.sleep(1)

#剪下輸入框內容

srk.send_keys(keys.control,'x'

)time.sleep(1)

#貼上已經剪下的內容

srk.send_keys(keys.control,'v'

)time.sleep(1)

#全選刪除內容

srk.send_keys(keys.control,'a'

)time.sleep(1)

srk.send_keys(keys.back_space)

time.sleep(1)

#重新輸入內容

srk.send_keys('

劉德華'

)time.sleep(1)

#全選複製輸入框內容

srk.send_keys(keys.control,'a'

)time.sleep(1)

srk.send_keys(keys.control,'c

')time.sleep(1)

srk.send_keys(keys.control,'v

')time.sleep(1)

#srk.send_keys(keys.enter)

time.sleep(3)

#關閉瀏覽器

driver.quit()

鍵盤操作常用內容:

各個按鍵輸入都是同一套路,照搬即可

Selenium 3 滑鼠 鍵盤操作常用方法

滑鼠 在 webdriver 中,關於滑鼠操作的方法封裝在 actionchains 類中。actionchains 類提供了滑鼠操作的常用方法 from selenium import webdriver 引入 actionchains 類 from selenium.webdriver.comm...

python selenium 滑鼠鍵盤操作

一 滑鼠操作 在webdriver中,滑鼠操作的方法封裝在actionchains類中。actionchains類常用的方法有 1 perform 執行所有actionchains中儲存的行為 2 context click 單擊右鍵 3 double click 雙擊左鍵 4 drag and d...

pyautogui模擬滑鼠鍵盤操作

快捷鍵win r調出 執行 命令視窗,輸出cmd 在cmd命令視窗輸出 pip install pyautogui 等待安裝,直到完成 開啟python的idle 導入庫 import pyautogui as pg 按需輸入命令即可 每條指令執行間隔 類似全域性 pg.pause 1 每隔1s執行...