Python 實(shí)現(xiàn)鍵盤鼠標(biāo)按鍵模擬
有時(shí)候我們需要使用python執(zhí)行一些腳本,可能需要讓程序自動(dòng)按鍵或自動(dòng)點(diǎn)擊鼠標(biāo),下面的代碼實(shí)現(xiàn)了對鍵盤的模擬按鍵,
需要安裝pypiwin32,當(dāng)然也可以直接用ctypes來實(shí)現(xiàn)。
pip install pypiwin32
安裝pypiwin32。
鍵盤模擬
# coding=utf-8import win32conimport win32apiimport timekey_map = { '0': 49, '1': 50, '2': 51, '3': 52, '4': 53, '5': 54, '6': 55, '7': 56, '8': 57, '9': 58, 'A': 65, 'B': 66, 'C': 67, 'D': 68, 'E': 69, 'F': 70, 'G': 71, 'H': 72, 'I': 73, 'J': 74, 'K': 75, 'L': 76, 'M': 77, 'N': 78, 'O': 79, 'P': 80, 'Q': 81, 'R': 82, 'S': 83, 'T': 84, 'U': 85, 'V': 86, 'W': 87, 'X': 88, 'Y': 89, 'Z': 90} def key_down(key): ''' 函數(shù)功能:按下按鍵 參 數(shù):key:按鍵值 ''' key = key.upper() vk_code = key_map[key] win32api.keybd_event(vk_code,win32api.MapVirtualKey(vk_code,0),0,0) def key_up(key): ''' 函數(shù)功能:抬起按鍵 參 數(shù):key:按鍵值 ''' key = key.upper() vk_code = key_map[key] win32api.keybd_event(vk_code, win32api.MapVirtualKey(vk_code, 0), win32con.KEYEVENTF_KEYUP, 0) def key_press(key): ''' 函數(shù)功能:點(diǎn)擊按鍵(按下并抬起) 參 數(shù):key:按鍵值 ''' key_down(key) time.sleep(0.02) key_up(key)
鼠標(biāo)模擬
# coding=utf-8import win32apiimport win32conimport win32guidef move(x, y): ''' 函數(shù)功能:移動(dòng)鼠標(biāo)到指定位置 參 數(shù):x:x坐標(biāo) y:y坐標(biāo) ''' win32api.SetCursorPos((x, y))def get_cur_pos(): ''' 函數(shù)功能:獲取當(dāng)前鼠標(biāo)坐標(biāo) ''' p={'x':0,'y':0} pos = win32gui.GetCursorPos() p[’x’]=pos[0] p[’y’]=pos[1] return pdef left_click(): ''' 函數(shù)功能:鼠標(biāo)左鍵點(diǎn)擊 ''' win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN | win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)def right_click(): ''' 函數(shù)功能:鼠標(biāo)右鍵點(diǎn)擊 ''' win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTDOWN | win32con.MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)def left_down(): ''' 函數(shù)功能:鼠標(biāo)左鍵按下 ''' win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)def left_up(): ''' 函數(shù)功能:鼠標(biāo)左鍵抬起 ''' win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)def right_down(): ''' 函數(shù)功能:鼠標(biāo)右鍵按下 ''' win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0)def right_up(): ''' 函數(shù)功能:鼠標(biāo)右鍵抬起 ''' win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)
以上就是Python 實(shí)現(xiàn)鍵盤按鍵模擬的詳細(xì)內(nèi)容,更多關(guān)于Python 鍵盤按鍵模擬的資料請關(guān)注好吧啦網(wǎng)其它相關(guān)文章!
相關(guān)文章:
1. php網(wǎng)絡(luò)安全中命令執(zhí)行漏洞的產(chǎn)生及本質(zhì)探究2. 三個(gè)不常見的 HTML5 實(shí)用新特性簡介3. Angular獲取ngIf渲染的Dom元素示例4. IIS+PHP添加對webp格式圖像的支持配置方法5. ASP調(diào)用WebService轉(zhuǎn)化成JSON數(shù)據(jù),附j(luò)son.min.asp6. 無線標(biāo)記語言(WML)基礎(chǔ)之WMLScript 基礎(chǔ)第1/2頁7. 使用.net core 自帶DI框架實(shí)現(xiàn)延遲加載功能8. Warning: require(): open_basedir restriction in effect,目錄配置open_basedir報(bào)錯(cuò)問題分析9. php測試程序運(yùn)行速度和頁面執(zhí)行速度的代碼10. ASP.NET Core 5.0中的Host.CreateDefaultBuilder執(zhí)行過程解析
