日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

使用 python pyautogui實(shí)現(xiàn)鼠標(biāo)鍵盤(pán)控制功能

系統(tǒng) 2219 0

pyautogui是一個(gè)可以控制鼠標(biāo)和鍵盤(pán)的python庫(kù),類似的還有pywin32。

pyautogui的安裝

pip3 install python3-xlib 依賴庫(kù) sudo apt-get install scrot 依賴庫(kù) pip3 install pyautogui  python3下安裝pyautogui庫(kù) import pyautogui 引入該庫(kù)

pyautogui的方法保護(hù)措施

為了防止pyautogui奪取了鼠標(biāo)的控制權(quán)導(dǎo)致我們無(wú)法關(guān)掉該程序,它提供了一個(gè)保護(hù)措施,即把鼠標(biāo)移到最左上角,此時(shí)程序報(bào)錯(cuò)退出;

默認(rèn)FAILSAFE=True,保護(hù)模式開(kāi)啟

FAILSAFE = False 關(guān)閉保護(hù)措施

獲取屏幕信息

size() 獲取當(dāng)前屏幕的分辨率,如(1920,1080)二元組

注意:屏幕左上角是原點(diǎn)(0,0),整個(gè)屏幕相當(dāng)于第一象限

position() 獲取鼠標(biāo)當(dāng)前坐標(biāo)

onScreen(x,y) 判斷點(diǎn)(x,y)是否在屏幕范圍內(nèi),如負(fù)值一定返回False

移動(dòng)鼠標(biāo)

moveTo(x,y,duration=0.25) 用0.25s的時(shí)間將鼠標(biāo)移到(x,y)位置 moveRel(x,y,duration=0.25) 以鼠標(biāo)所在位置為原點(diǎn),將鼠標(biāo)移動(dòng)到(x,y)處

下面代碼,讓鼠標(biāo)在指定位置繞一個(gè)正方形轉(zhuǎn)動(dòng)10圈

            
import pyautogui
for i in range(10):
 pyautogui.moveTo(300, 300, duration=0.25)
 pyautogui.moveTo(400, 300, duration=0.25)
 pyautogui.moveTo(400, 400, duration=0.25)
 pyautogui.moveTo(300, 400, duration=0.25)
          

下面代碼,讓鼠標(biāo)繞當(dāng)前位置繞正方形轉(zhuǎn)10圈

            
import pyautogui
for i in range(10):
 pyautogui.moveRel(100, 0, duration=0.25)
 pyautogui.moveRel(0, 100, duration=0.25)
 pyautogui.moveRel(-100, 0, duration=0.25)
 pyautogui.moveRel(0, -100, duration=0.25)
          

鼠標(biāo)事件

點(diǎn)擊鼠標(biāo)

click(x, y, button='left', click=3, interval=0.5)

button有3個(gè)選項(xiàng):left,middle,right,不加則默認(rèn)點(diǎn)擊鼠標(biāo)左鍵click表示單擊次數(shù)interval表示每次單擊之間的時(shí)間間隔click()函數(shù)實(shí)際由mouseDown()和mouseUp()組成,即按下和松開(kāi);

pyautogui.doubleClick() 鼠標(biāo)雙擊,其實(shí)就是執(zhí)行兩次click()函數(shù)。 pyautogui.rightClick() 右擊 pyautogui.middleClick() 中擊

鼠標(biāo)滾輪

scroll(200) 控制鼠標(biāo)的滾輪,正值上滾,負(fù)值下滾

拖拽鼠標(biāo)

dragTo() dragRel()

按下鼠標(biāo),并拖拽到指定位置,用法同moveTo(),moveRel()窗口截圖處理、尋找目標(biāo)按鈕截圖功能

im = screenshot( region=(x,y,width,heigth) ) 截取以(x,y)為左上角且指定寬高的區(qū)域,不加參數(shù),默認(rèn)截取整個(gè)屏幕

im.getpixel( (x,y) )  獲取指定位置的像素,是一個(gè)三元組(注意輸入格式) pixelMatchesColor(x,y,(R,G,B)) 判斷(x,y)處的像素是否等于RGB im.save('xx.png') 保存為x.png

尋找按鈕

locateOnscreen('xx.png') 尋找屏幕中和xx.png一樣的圖標(biāo)位置,是一個(gè)四元組 click( center( locateOnscreen('xx.png') ) ) 點(diǎn)擊該圖標(biāo)的中心,center用來(lái)獲取圖標(biāo)中心點(diǎn)的坐標(biāo)

比如把網(wǎng)易云音樂(lè)的應(yīng)用存為music.png,上述就執(zhí)行自動(dòng)點(diǎn)擊網(wǎng)易云的圖標(biāo)

總結(jié)

以上所述是小編給大家介紹的python中的pyautogui實(shí)現(xiàn)鼠標(biāo)鍵盤(pán)控制功能,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)歡迎給我留言,小編會(huì)及時(shí)回復(fù)大家的!


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 宁国市| 白水县| 饶阳县| 威海市| 昌都县| 宜黄县| 梁山县| 高雄市| 五指山市| 遂昌县| 大庆市| 栖霞市| 凤冈县| 陇南市| 扶风县| 城口县| 安图县| 澄城县| 凤台县| 赣榆县| 合作市| 东宁县| 仁布县| 沛县| 延长县| 清河县| 松滋市| 威宁| 龙山县| 安平县| 双城市| 宜春市| 兴业县| 勐海县| 准格尔旗| 乐陵市| 普陀区| 吴桥县| 沁水县| 娱乐| 汾阳市|