Selenium鼠標(biāo)與鍵盤事件常用操作方法示例
本文實(shí)例講述了Selenium鼠標(biāo)與鍵盤事件常用操作方法。分享給大家供大家參考,具體如下:
Selenium是一個(gè)用于Web應(yīng)用程序測(cè)試的工具。Selenium測(cè)試直接運(yùn)行在瀏覽器中,就像真正的用戶在操作一樣。支持的瀏覽器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。這個(gè)工具的主要功能包括:測(cè)試與瀏覽器的兼容性——測(cè)試你的應(yīng)用程序看是否能夠很好得工作在不同瀏覽器和操作系統(tǒng)之上。測(cè)試系統(tǒng)功能——?jiǎng)?chuàng)建回歸測(cè)試檢驗(yàn)軟件功能和用戶需求。支持自動(dòng)錄制動(dòng)作和自動(dòng)生成 .Net、Java、Perl等不同語言的測(cè)試腳本。
在之前的《Selenium元素的常用操作方法》中有講到元素的一些常用方法,接下來記錄一下元素的鼠標(biāo)與鍵盤事件
鼠標(biāo)事件
在WebDriver中,將這些關(guān)于鼠標(biāo)操作的方法封裝在ActionChains類提供。ActionChains類提供了鼠標(biāo)操作的常用方法:
perform()
:執(zhí)行所有ActionChains存儲(chǔ)的行為context_click()
:右擊double_click()
:雙擊drag_and_drop()
:拖動(dòng)move_to_element()
:懸停
下面需要操作瀏覽器實(shí)現(xiàn)下面這樣的一個(gè)操作,即使鼠標(biāo)懸停:
代碼如下:
from selenium.webdriver import Chrome from selenium.webdriver.common.action_chains import ActionChains driver = Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe") driver.get("https://www.baidu.com/") element = driver.find_element_by_link_text("設(shè)置") ActionChains(driver).move_to_element(element).perform()
鍵盤事件
Keys類提供了幾乎鍵盤上的所有按鍵的方法,在前面的博文中有了解到,send_keys()
可以用來模擬鍵盤輸入的操作,除此之外,我們還可以用Keys來模擬鍵盤上的按鍵,或者組合鍵,如Ctrl + C
、Ctrl + V
等等。
from selenium.webdriver import Chrome from selenium.webdriver.common.keys import Keys driver = Chrome("C:\Program Files (x86)\Google\Chrome\Application\chromedriver.exe") driver.get("https://www.baidu.com/")
模擬鍵盤輸入“python”:
driver.find_element_by_id("kw").send_keys("python.")
刪除最后一個(gè)字符:
driver.find_element_by_id("kw").send_keys(Keys.BACK_SPACE)
模擬鍵盤輸入一個(gè)空格:
driver.find_element_by_id("kw").send_keys(Keys.SPACE)
模擬鍵盤輸入“教程”:
driver.find_element_by_id("kw").send_keys("教程")
輸入框全選:
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,"a")
剪切:
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,"x")
粘貼:
driver.find_element_by_id("kw").send_keys(Keys.CONTROL,"v")
回車:
driver.find_element_by_id("kw").send_keys(Keys.ENTER)
下面介紹幾個(gè)常用的鍵盤操作:
- Keys.BACK_SPACE:刪除鍵
- Keys.SPACE:空格鍵
- Keys.TAB:Tab鍵
- Keys.ESCAPE:回退鍵
- Keys.ENTER:回車鍵
- Keys.CONTROL,”a”:組合鍵,Ctrl + A
- Keys.CONTROL,”x”:組合鍵,Ctrl + X
- Keys.CONTROL,”v”:組合鍵,Ctrl + V
- Keys.CONTROL,”c”:組合鍵,Ctrl + C
- Keys.F1:F1鍵
- Keys.F12:F12鍵
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python Socket編程技巧總結(jié)》、《Python URL操作技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
python機(jī)器學(xué)習(xí)基礎(chǔ)線性回歸與嶺回歸算法詳解
這篇文章主要為大家介紹了python機(jī)器學(xué)習(xí)基礎(chǔ)線性回歸與嶺回歸算法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-11-11在python2.7中用numpy.reshape 對(duì)圖像進(jìn)行切割的方法
今天小編就為大家分享一篇在python2.7中用numpy.reshape 對(duì)圖像進(jìn)行切割的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-12-12shell命令行,一鍵創(chuàng)建 python 模板文件腳本方法
下面小編就為大家分享一篇shell命令行,一鍵創(chuàng)建 python 模板文件腳本方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-03-03Python面向?qū)ο筮M(jìn)階學(xué)習(xí)
在本文里我們整理了關(guān)于Python面向?qū)ο蟮倪M(jìn)階學(xué)習(xí)知識(shí)點(diǎn)以及學(xué)習(xí)路線等內(nèi)容,有興趣的朋友們學(xué)習(xí)下。2019-05-05python實(shí)現(xiàn)n個(gè)數(shù)中選出m個(gè)數(shù)的方法
今天小編就為大家分享一篇python實(shí)現(xiàn)n個(gè)數(shù)中選出m個(gè)數(shù)的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-11-11在PyCharm導(dǎo)航區(qū)中打開多個(gè)Project的關(guān)閉方法
今天小編就為大家分享一篇在PyCharm導(dǎo)航區(qū)中打開多個(gè)Project的關(guān)閉方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-01-01python使用struct模塊實(shí)現(xiàn)打包/解包二進(jìn)制數(shù)據(jù)
因?yàn)榫W(wǎng)絡(luò)傳輸?shù)臄?shù)據(jù)都是二進(jìn)制字節(jié)流,而?Python?只有字符串可以直接轉(zhuǎn)成字節(jié)流,對(duì)于整數(shù)、浮點(diǎn)數(shù)則無能為力了,所以?Python?提供了?struct?模塊來幫我們解決這一點(diǎn),下面我們就來看看它的用法吧2023-09-09