Selenium WebDriver-操作鍵盤事件


# 注意: !!!操作操作系統的按鍵,需要先裝pywin32,然后通過交互模式import win32api和import win32con判斷是否安裝成功,需要重啟下cmd進入交互模式
# 下載鏈接: https://pan.baidu.com/s/1oqULscy9i4n266H4wEI3sA 密碼: 3ucb

#
encoding=utf-8 import unittest from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.common.keys import Keys import win32clipboard as w import win32con import time import win32api # 讀取剪切板 def getText(): w.OpenClipboard() d = w.GetClipboardData(win32con.CF_TEXT) w.CloseClipboard() return d # 設置剪切板內容 def setText(aString): w.OpenClipboard() w.EmptyClipboard() w.SetClipboardData(win32con.CF_UNICODETEXT, aString) w.CloseClipboard() VK_CODE ={ 'enter':0x0D, 'ctrl':0x11, 'a':0x41, 'v':0x56, 'x':0x58 } #鍵盤鍵按下 def keyDown(keyName): win32api.keybd_event(VK_CODE[keyName], 0, 0, 0) #鍵盤鍵抬起 def keyUp(keyName): win32api.keybd_event(VK_CODE[keyName], 0, win32con.KEYEVENTF_KEYUP, 0) class VisitSogouByIE(unittest.TestCase): def setUp(self): #啟動IE瀏覽器 #self.driver = webdriver.Firefox(executable_path = "e:\\geckodriver") self.driver = webdriver.Ie(executable_path = "e:\\IEDriverServer") def test_copyAndPaste(self): url = "http://www.baidu.com" # 訪問百度首頁 self.driver.get(url) # 定義即將要被設置到剪切板中的內容 content = u'光榮之路' # 將content變量中的內容設置到剪切板中 setText(content) # 從剪切板中獲取剛設置到剪切板中的內容 getContent = getText() print getContent # 將焦點切換到搜索輸入框中 self.driver.find_element_by_id("kw").click() time.sleep(1) keyDown('ctrl') keyDown('v') # 釋放Ctrl + v組合鍵 keyUp('v') keyUp('ctrl') # 點擊“百度一下”搜索按鈕 time.sleep(1) self.driver.find_element_by_id('su').click() time.sleep(3) def tearDown(self): # 退出IE瀏覽器 self.driver.quit() if __name__ == '__main__': unittest.main()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM