中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python操作自動化庫PyAutoGUI的方法

發布時間:2020-07-23 17:24:46 來源:億速云 閱讀:290 作者:小豬 欄目:開發技術

這篇文章主要講解了Python操作自動化庫PyAutoGUI的方法,內容清晰明了,對此有興趣的小伙伴可以學習一下,相信大家閱讀完之后會有幫助。

PyAutoGUI是一個Python語言的鍵鼠自動化庫,簡單來說和按鍵精靈的功能一樣。但是因為是Python的類庫,所以可以使用Python代碼配合一些其他類庫完成更加強大的功能。下面讓我為大家介紹一下吧。

安裝

從pip安裝即可。

pip install pyautogui

稍等一下安裝就完畢了。

Python操作自動化庫PyAutoGUI的方法

使用介紹

簡單介紹一下PyAutoGUI的函數以及使用方法。

鼠標操作函數

操作鼠標點擊的函數。

函數簡單說明
move(x,y)、 moveTo(x,y)移動鼠標,前者移動相對位置,后者移動到指定位置
click(x,y)、doubleClick、rightClick單擊/雙擊/右擊,無參版本在當前位置點擊鼠標
drag(x,y)、dragTo(x,y)拖動鼠標
mouseDown、mouseUp按下按鍵,松開按鍵
scroll向下滾動鼠標滾輪的函數

鍵盤操作函數

操作鍵盤按鍵的函數。

函數簡介
press('left',press=3)
hotkey('ctrl','s')按下Ctrl+S組合鍵
keyDown、keyUp按下和松開鍵盤按鍵

提示框函數

PyAutoGUI可以顯示提示框,這時候程序會暫停運行,直到用戶點擊提示框。

函數簡介
alert(text='',title='',button=['OK','Cancle'])顯示警告對話框
confirm()顯示確認對話框
prompt()顯示提示對話框
password()顯示密碼輸入對話框

屏幕截圖和定位函數

截取屏幕的函數,也可以從屏幕中尋找匹配的圖片,并返回其坐標。你可以事先保存一些按鈕的截圖,然后通過這種方式定位按鈕的位置,然后點擊。

函數簡介
screenshot('image.png')保存截圖并返回截圖,無參版本直接返回截圖不保存
center('image.png')從屏幕上尋找圖片位置,返回框位置
locateOnScreen('img')從屏幕尋找圖片位置,直接返回坐標

簡單例子

先來看看官網的畫圖例子,我把代碼稍微改了一下。運行這個例子需要先打開一個畫圖窗口,并放到全屏,然后運行Python代碼,迅速將畫圖程序切換到前臺。這樣就可以看到PyAutoGUI控制鼠標來繪制精確的直線了。

import pyautogui
import time

time.sleep(3)

distance = 100
pyautogui.moveTo(400, 300)
while distance > 0:
  pyautogui.drag(distance, 0, duration=0.1)  
  distance -= 5
  pyautogui.drag(0, distance, duration=0.1)  
  pyautogui.drag(-distance, 0, duration=0.1) 
  distance -= 5
  pyautogui.drag(0, -distance, duration=0.1) 

繪制出來的圖片應該是這樣的。

Python操作自動化庫PyAutoGUI的方法

如果要完成一些實際工作,難免會遇到識別點擊復雜樣式圖片的場景。前面提到了截圖和圖片識別可以比較好的解決這個問題。這個例子需要先安裝OpenCV庫和opencv-python包,安裝完畢之后就可以運行了。這里將win10計算器的幾個按鈕保存成圖片,然后用PyAutoGUI的圖片識別功能找到按鈕的坐標,這樣就可以無障礙的點擊按鈕,無需關心窗口的位置。特別提一點,下面的confidence參數需要安裝了OpenCV才可以使用,它允許我們模糊匹配圖片。

import pyautogui
import time

time.sleep(3)

# Windows計算器的按鈕截圖
five = '5.png'
eight = '8.png'
multiply = 'multiply.png'
equals = 'equals.png'

# 圖片識別和點擊的函數


def find_and_click(image):
  x, y = pyautogui.locateCenterOnScreen(image, confidence=0.9)
  pyautogui.click(x, y)


# 執行5*8=
find_and_click(five)
find_and_click(multiply)
find_and_click(eight)
find_and_click(equals)

看完上述內容,是不是對Python操作自動化庫PyAutoGUI的方法有進一步的了解,如果還想學習更多內容,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

莫力| 临沂市| 开鲁县| 海晏县| 泸水县| 保山市| 台中市| 东乡县| 彩票| 南昌市| 江孜县| 新乡县| 西安市| 长宁县| 芷江| 张家口市| 富宁县| 青河县| 博湖县| 双城市| 抚顺县| 浦江县| 葫芦岛市| 奉贤区| 辽宁省| 安吉县| 睢宁县| 延庆县| 秦安县| 湄潭县| 舒城县| 克什克腾旗| 榆中县| 井研县| 德惠市| 若尔盖县| 吴江市| 南郑县| 南平市| 互助| 通道|