Python - selenium_WebDriver 鼠标键盘事件
生活随笔
收集整理的這篇文章主要介紹了
Python - selenium_WebDriver 鼠标键盘事件
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
?
?
?
from selenium import webdriver #引入ActionChains類 提供了鼠標(biāo)的操作方法 from selenium.webdriver.common.action_chains import ActionChainsfrom selenium.webdriver.common.keys import Keys from ReadTxt_demo import readTxt import time#鼠標(biāo)鍵盤事件 ''' ActionChains 常用方法perform() 執(zhí)行所有ActionChains 中存儲的行為; context_click() 右擊; double_click() 雙擊; drag_and_drop() 拖動; move_to_element() 鼠標(biāo)懸停。'''driver = webdriver.Firefox()driver.maximize_window() #打開百度網(wǎng)盤 driver.get("https://pan.baidu.com")#點(diǎn)擊 “帳號密碼登錄” driver.find_element_by_xpath(".//*[@id='login-middle']/div/div[6]/div[2]/a").click() # 引入讀取文件模塊獲取用戶名密碼 # from ReadTxt_demo import readTxt filePath = 'userInfo.txt' re_name, re_pwd = readTxt(filePath) #清空輸入框,防止追加輸入 driver.find_element_by_name("userName").clear() username = driver.find_element_by_name("userName") #輸入用戶名 username.send_keys(re_name) #通過鍵盤敲擊tab ,切換到下一個輸入框。 username.send_keys(Keys.TAB) time.sleep(2) password = driver.find_element_by_name("password") password.send_keys(re_pwd) password.send_keys(Keys.ENTER) time.sleep(3)# 事實證明如果不加隱式等待implicitly_wait(5) 會出現(xiàn):錯誤:Message: Unable to locate element: #所以 implicitly_wait(5) 比sleep 靠譜 driver.implicitly_wait(5) #測試單擊操作 #driver.find_element_by_xpath(".//*[@id='h5Input0']").click()#定位到元素,進(jìn)行右擊操作 #通過 link_text 定位。 right_click = driver.find_element_by_link_text('新建文件夾(1)') driver.implicitly_wait(5) #鼠標(biāo)懸停 ActionChains(driver).move_to_element(right_click).perform() time.sleep(10) #對定位到的元素執(zhí)行右擊操作 ActionChains(driver).context_click(right_click).perform() #.//*[@id='layoutMain']/div[2]/div[3]/div/div/dd[1]/div[2]/div[1]#鼠標(biāo)拖動操作, #定義原位置、目標(biāo)位置=right_click driver.implicitly_wait(5) file_source = driver.find_element_by_xpath(".//*[@id='layoutMain']/div[2]/div[3]/div/div/dd[1]/div[2]/div[1]") driver.implicitly_wait(5) ActionChains(driver).drag_and_drop(file_source,right_click).perform() driver.implicitly_wait(5)#鼠標(biāo)雙擊 ActionChains(driver).double_click(right_click).perform() time.sleep(13) ''' from selenium.webdriver.common.action_chains import ActionChains 導(dǎo)入提供鼠標(biāo)操作的 ActionChains 類 ActionChains(driver) 調(diào)用ActionChains()類,將瀏覽器驅(qū)動driver作為參數(shù)傳入 context_click(right_click) context_click()方法用戶模擬鼠標(biāo)右鍵操作,在調(diào)用時需要指定元素定位 perform() 執(zhí)行所有ActionChains中存儲的行為,可以理解為對整個操作的提交動作。'''
#下面時 鍵盤操作
?
driver.quit() #driver.close()
?
?
?
?
from selenium import webdriver from selenium.webdriver.common.keys import Keys import time'''from selenium.webdriver.common.keys import Keys 在使用鍵盤按鍵方法前需要先導(dǎo)入 keys 類包。 下面經(jīng)常使用到的鍵盤操作: send_keys(Keys.BACK_SPACE) 刪除鍵(BackSpace) send_keys(Keys.SPACE) 空格鍵(Space) send_keys(Keys.TAB) 制表鍵(Tab) send_keys(Keys.ESCAPE) 回退鍵(Esc) send_keys(Keys.ENTER) 回車鍵(Enter) send_keys(Keys.CONTROL,'a') 全選(Ctrl+A) send_keys(Keys.CONTROL,'c') 復(fù)制(Ctrl+C)博客園---蟲師 http://fnng.cnblogs.com 52 send_keys(Keys.CONTROL,'x') 剪切(Ctrl+X) send_keys(Keys.CONTROL,'v') 粘貼(Ctrl+V) Keys 類所提供的按鍵請查閱 webdriver API.'''driver = webdriver.Firefox() url = "http://www.hao123.com" driver.maximize_window() driver.get(url)driver.implicitly_wait(3) driver.find_element_by_id('search-input').clear() driver.find_element_by_id('search-input').send_keys('seleniumm') driver.implicitly_wait(3) #回刪 driver.find_element_by_id('search-input').send_keys(Keys.BACK_SPACE) driver.implicitly_wait(3) #追加空格 driver.find_element_by_id('search-input').send_keys(Keys.SPACE) driver.implicitly_wait(3) driver.find_element_by_id('search-input').send_keys('教程') driver.implicitly_wait(3) #全選內(nèi)容 driver.find_element_by_id('search-input').send_keys(Keys.CONTROL,'a') driver.implicitly_wait(3) #剪切內(nèi)容 driver.find_element_by_id('search-input').send_keys(Keys.CONTROL,'x') driver.implicitly_wait(3)#粘貼內(nèi)容 driver.find_element_by_id('search-input').send_keys(Keys.CONTROL,'v') driver.implicitly_wait(3)#回車代替 點(diǎn)擊 driver.find_element_by_id('search-input').send_keys(Keys.ENTER) driver.implicitly_wait(3)time.sleep(10)driver.quit()
?
轉(zhuǎn)載于:https://www.cnblogs.com/Skyyj/p/6687028.html
總結(jié)
以上是生活随笔為你收集整理的Python - selenium_WebDriver 鼠标键盘事件的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 伍德沃特费曼费莱
- 下一篇: 2017-04-09,周日整理