亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

selenium+python自動化測試之鼠標和鍵盤事件

發布時間:2020-10-08 01:47:25 來源:腳本之家 閱讀:318 作者:zh175578809 欄目:開發技術

前面的例子中,點擊事件都是通過click()方法實現鼠標的點擊事件。其實在WebDriver中,提供了許多鼠標操作的方法,這些操作方法都封裝在ActionChains類中,包括鼠標右擊、雙擊、懸停和鼠標拖動等功能。

ActionChains類提供的鼠標操作事件

  • context_click():點擊鼠標右鍵
  • double_click():雙擊鼠標
  • drag_and_drop():拖動鼠標
  • move_to_element():鼠標懸停

鼠標懸停

頁面上有些下拉菜單,在鼠標放到元素上以后,下面的菜單才會顯示出來。下面的圖片就是一個例子

selenium+python自動化測試之鼠標和鍵盤事件

百度首頁上的設置項,下面的菜單默認不會顯示,將鼠標停在上面后才會顯示,這就是鼠標的懸停操作,菜單顯示以后就可以對下面的項進行點擊操作

進入搜索設置的代碼

# -*- coding: utf-8 -*-

from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
time.sleep(3)

settings = driver.find_element_by_link_text('設置')
webdriver.ActionChains(driver).move_to_element(settings).perform()

time.sleep(1)

settings_search = driver.find_element_by_class_name('setpref')
settings_search.click()

time.sleep(3)
driver.close()

打開頁面后,根據鏈接的文本信息找到設置項,使用ActionChains的move_to_element()方法將鼠標懸停在設置上,然后找到搜索設置項

鼠標的右擊、雙擊和拖動事件都是通過上述的方法調用,只要將方法替換一下就可以了。拖動事件需要傳入兩個參數,第一個參數是拖動的起點元素,第二個參數是終點元素

webdriver.ActionChains(driver).context_click("右擊的元素定位").perform() #右擊事件
webdriver.ActionChains(driver).double_click("雙擊的元素定位").perform() #雙擊事件
webdriver.ActionChains(driver).drag_and_drop("拖動的起點元素", "拖動的終點元素").perform() #拖動事件

鍵盤事件

Keys類中提供了幾乎所有的鍵盤事件,在鼠標事件中用到了兩個鍵盤事件,鍵盤的向下按鍵(send_keys(Keys.DOWN))和鍵盤的回車事件(send_keys(Keys.ENTER))。鍵盤的事件需要導入Keys模塊

from selenium.webdriver.common.keys import Keys

所有的鍵盤事件都包含在這個模塊中,send_keys用來模擬鍵盤輸入,除此之外,還可以用例模擬鍵盤上的按鍵,不僅支持單個的鍵盤按鍵,還支持組合按鍵輸入

# -*- coding: utf-8 -*-

from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get("http://www.baidu.com")
time.sleep(3)

driver.find_element_by_id('kw').send_keys('selenium') #在搜索框中輸入"selenium"
driver.find_element_by_id('kw').send_keys(Keys.SPACE) #輸入空格鍵
driver.find_element_by_id('kw').send_keys('python') #在搜索框中輸入"python"
driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'a') #輸入Control+a模擬全選
driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'c') #輸入Control+c模擬復制
driver.find_element_by_id('kw').send_keys(Keys.CONTROL, 'v') #輸入Control+v模擬粘貼
driver.find_element_by_id('kw').send_keys(Keys.ENTER) #輸入回車代替點擊搜索按鈕

time.sleep(3)
driver.close()

下面是一些常用的鍵盤事件:

– Keys.BACK_SPACE:回退鍵(BackSpace)
– Keys.TAB:制表鍵(Tab)
– Keys.ENTER:回車鍵(Enter)
– Keys.SHIFT:大小寫轉換鍵(Shift)
– Keys.CONTROL:Control鍵(Ctrl)
– Keys.ALT:ALT鍵(Alt)
– Keys.ESCAPE:返回鍵(Esc)
– Keys.SPACE:空格鍵(Space)
– Keys.PAGE_UP:翻頁鍵上(Page Up)
– Keys.PAGE_DOWN:翻頁鍵下(Page Down)
– Keys.END:行尾鍵(End)
– Keys.HOME:行首鍵(Home)
– Keys.LEFT:方向鍵左(Left)
– Keys.UP:方向鍵上(Up)
– Keys.RIGHT:方向鍵右(Right)
– Keys.DOWN:方向鍵下(Down)
– Keys.INSERT:插入鍵(Insert)
– DELETE:刪除鍵(Delete)
– NUMPAD0 ~ NUMPAD9:數字鍵1-9
– F1 ~ F12:F1 - F12鍵
– (Keys.CONTROL, ‘a'):組合鍵Control+a,全選
– (Keys.CONTROL, ‘c'):組合鍵Control+c,復制
– (Keys.CONTROL, ‘x'):組合鍵Control+x,剪切
– (Keys.CONTROL, ‘v'):組合鍵Control+v,粘貼

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

桑植县| 报价| 泊头市| 广安市| 乌拉特后旗| 炉霍县| 潞城市| 呼伦贝尔市| 阳朔县| 繁昌县| 额敏县| 兴海县| 长沙县| 惠安县| 大埔区| 十堰市| 平泉县| 道孚县| 公主岭市| 谢通门县| 闽清县| 双柏县| 西城区| 舟山市| 开封市| 奎屯市| 千阳县| 万荣县| 曲周县| 崇文区| 沛县| 滨州市| 江陵县| 广宁县| 特克斯县| 香港| 禹州市| 宁国市| 新晃| 锦屏县| 大关县|