1. 程式人生 > 其它 >定位滑鼠和鍵盤操作

定位滑鼠和鍵盤操作

from selenium import webdriver

import time

# 導包滑鼠金額鍵盤操作
from selenium.webdriver import ActionChains
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.wait import WebDriverWait

"""
滑鼠操作的步驟
1.生成滑鼠物件:ActionChains
2.做對應的操作:context_click, double_click, move_to_element, click
3.執行響應的操作:perform
"""

driver = webdriver.Chrome()
driver.get('網址')

# 生成滑鼠操作物件
action = ActionChains(driver)

# 呼叫滑鼠右擊方法
action.context_click(driver.find_element(By.ID,'userA'))

# 輸入使用者名稱,雙點使用者名稱
element = driver.find_element(By.ID,'userA')
element.sand_keys('admin')
time.sleep(3)
# 呼叫滑鼠雙擊事件方法
action.double_click(element)

# 懸停在註冊上
element = driver.find_element(By.CSS_SELECTOR,'button')
# 呼叫滑鼠懸停條件方法
action.mobe_to_element(element)

# 呼叫滑鼠執行的方法
action.perform()

"""
獲取元素資訊:size,text,get_attribute
判斷元素資訊:id_displayed,is_enables,is_selected
"""

# 生成鍵盤操作物件
"""
1. send_keys(Keys.BACK_SPACE) 刪除鍵(BackSpace)
2. send_keys(Keys.SPACE) 空格鍵(Space)
3. send_keys(Keys.TAB) 製表鍵(Tab)
4. send_keys(Keys.ESCAPE) 回退鍵(Esc)
5. send_keys(Keys.ENTER) 回車鍵(Enter)
6. send_keys(Keys.CONTROL,'a') 全選(Ctrl+A)
7. send_keys(Keys.CONTROL,'c') 複製(Ctrl+C)
8. send_keys(Keys.CONTROL,'v') 貼貼
"""
# 輸入使用者名稱:admin1,暫停2秒,刪除1
element = driver.find_element(By.ID,'userA')
element.send_keys('admin1')
time.sleep(2)
element.send_keys(Keys.BACK_SPACE)
# 刪除最後一個 字串  clear()

# 全選使用者名稱:admin.暫停2秒
element.send_keys(Keys.COMMAND,'a')
time.sleep(2)

# 複製使用者名稱:admin,暫停2秒
b = element.send_keys(Keys.COMMAND,'c')
time.sleep(2)
# 貼貼到密碼框
driver.find_element(By.ID,'passwordA').send_keys(Keys.COMMAND,'v')