Python selenium鍵盤(pán)鼠標(biāo)事件實(shí)現(xiàn)過(guò)程詳解
引言
----在實(shí)際的web測(cè)試工作中,需要配合鍵盤(pán)按鍵來(lái)操作,webdriver的 keys()類(lèi)提供鍵盤(pán)上所有按鍵的操作,還可以模擬組合鍵Ctrl+a,Ctrl+v等。
舉例:
#cording=gbk
import os
import time
from selenium import webdriver
from selenium.webdriver.common.by import By #導(dǎo)入by方法
from selenium.webdriver.common.action_chains import ActionChains ##對(duì)鼠標(biāo)事件操作
from selenium.webdriver.common.keys import Keys # 對(duì)鍵盤(pán)事件操作
current_path=os.path.dirname(__file__)
firefox_path=current_path+"/../webdriver/geckodriver.exe"
driver=webdriver.Firefox(executable_path=firefox_path)
driver.get("http://www.baidu.com")
# 先輸入百度
driver.find_element_by_id('kw').send_keys('百度')
time.sleep(3)
# 1.刪除度
driver.find_element_by_id('kw').send_keys(Keys.BACK_SPACE)
time.sleep(3)
#2.清空輸入框,重新輸入值
driver.find_element_by_id('kw').clear()
driver.find_element_by_id('kw').send_keys('安琪兒')
time.sleep(5)
# 3.ctrl+a 全選輸入框里的內(nèi)容
driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'a')
time.sleep(3)
# 4.ctrl+x 剪切輸入框里的內(nèi)容
driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'x')
time.sleep(3)
# 5. ctrl+v 粘貼剪切的內(nèi)容
driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'v')
time.sleep(3)
# 6. 回車(chē)
driver.find_element_by_id('su').send_keys(Keys.ENTER)
time.sleep(3)
在實(shí)際的web產(chǎn)品測(cè)試中,對(duì)于鼠標(biāo)的操作,不單單只有click(),有時(shí)候還要用到右擊、雙擊、拖動(dòng)等操作,這些操作包含在ActionChains類(lèi)中。
ActionChains類(lèi)中鼠標(biāo)操作常用方法:
- context_click() :右擊
- double_click() :雙擊
- drag_and_drop() :拖動(dòng)
- move_to_element() :鼠標(biāo)移動(dòng)到一個(gè)元素上
舉例:
#cording=gbk
import os
from selenium import webdriver
from selenium.webdriver.common.by import By #導(dǎo)入by方法
from selenium.webdriver.common.action_chains import ActionChains ##對(duì)鼠標(biāo)事件操作
current_path=os.path.dirname(__file__)
firefox_path=current_path+"/../webdriver/geckodriver.exe"
driver=webdriver.Firefox(executable_path=firefox_path)
driver.get("http://127.0.0.1/zentao/user-login-L3plbnRhby9teS5odG1s.html")
mouse=ActionChains(driver) #創(chuàng)建一個(gè)鼠標(biāo)對(duì)象
# element1=driver.find_element(By.XPATH,"http://img[@src='/zentao/theme/default/images/main/zt-logo.png']") #Xpath利用屬性定位
element1=driver.find_element(By.XPATH,"http://img[contains(@src,'images/main/zt-logo.png')]") #xpath使用包含屬性方法定位
mouse.context_click(element1).perform() #執(zhí)行鼠標(biāo)右擊,.perform() 表示執(zhí)行
element2=driver.find_element(By.XPATH,"http://button[@type='button' and @class='btn' ]") #多屬性定位
mouse.move_to_element(element2).perform() #移動(dòng)到這個(gè)元素上
#對(duì)元素進(jìn)行截圖
driver.find_element(By.XPATH,"http://button[@id='submit'][@type='submit']").screensh
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Python控制鍵盤(pán)鼠標(biāo)pynput的詳細(xì)用法
- Python控制鼠標(biāo)鍵盤(pán)代碼實(shí)例
- python 實(shí)現(xiàn)控制鼠標(biāo)鍵盤(pán)
- Python 實(shí)現(xiàn)鍵盤(pán)鼠標(biāo)按鍵模擬
- Python監(jiān)聽(tīng)鍵盤(pán)和鼠標(biāo)事件的示例代碼
- python PyAUtoGUI庫(kù)實(shí)現(xiàn)自動(dòng)化控制鼠標(biāo)鍵盤(pán)
- Python2.7:使用Pyhook模塊監(jiān)聽(tīng)鼠標(biāo)鍵盤(pán)事件-獲取坐標(biāo)實(shí)例
- Python pyautogui模塊實(shí)現(xiàn)鼠標(biāo)鍵盤(pán)自動(dòng)化方法詳解
- python模擬鼠標(biāo)點(diǎn)擊和鍵盤(pán)輸入的操作
- python使用pynput庫(kù)操作、監(jiān)控你的鼠標(biāo)和鍵盤(pán)
相關(guān)文章
Python讀取圖片為16進(jìn)制表示簡(jiǎn)單代碼
這篇文章主要介紹了Python讀取圖片為16進(jìn)制表示簡(jiǎn)單代碼,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01
Python虛擬環(huán)境Virtualenv使用教程
這篇文章主要介紹了Python虛擬環(huán)境Virtualenv簡(jiǎn)明教程,本文整合了兩篇關(guān)于Virtualenv的使用教程,相信大家有通過(guò)本文一定可以學(xué)會(huì)如何使用Virtualenv,需要的朋友可以參考下2015-05-05
利用Python實(shí)現(xiàn)自動(dòng)掃雷小腳本
這篇文章主要介紹了利用Python實(shí)現(xiàn)自動(dòng)掃雷小腳本,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-12-12
python如何讀寫(xiě)json數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了python如何讀寫(xiě)json數(shù)據(jù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
探索Python進(jìn)度條魔法解密任務(wù)進(jìn)展新玩法
在日常編程和應(yīng)用開(kāi)發(fā)中,展示進(jìn)度條是一種常見(jiàn)的技巧,不僅能夠提供用戶友好的體驗(yàn),還可以顯示任務(wù)執(zhí)行的進(jìn)度,Python作為一種多才多藝的編程語(yǔ)言,提供了多種方法來(lái)創(chuàng)建進(jìn)度條,本篇文章將深入探討這些方法,為您呈現(xiàn)各種實(shí)現(xiàn)進(jìn)度條的技術(shù)和技巧2024-01-01

