成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

PyAutoGUI:自動化鍵鼠操作的 Python 類庫

開發 后端 自動化
有些朋友可能玩過按鍵精靈,一個用來操作鍵盤鼠標完成一些自動化工作的軟件。其實如果你學了Python的話,完全用不著按鍵精靈這種東西了。

 有些朋友可能玩過按鍵精靈,一個用來操作鍵盤鼠標完成一些自動化工作的軟件。其實如果你學了Python的話,完全用不著按鍵精靈這種東西了。因為廣泛的Python類庫里,就有PyAutoGUI這樣可以變成控制鍵盤鼠標的類庫,有了它,就可以用Python隨心所欲的操作電腦了。而且這個類庫是跨平臺的,Windows、Linux、macOS都可以用,是不是很吸引人呢?

安裝和使用

安裝PyAutoGUI非常簡單,從pip安裝即可。

  1. pip install pyautogui 

這里順便介紹一下PyAutoGUI的坐標系統,和一些常見的繪圖坐標系統相同,左上角為原點,向右是x軸正方向,向下是y軸正方向。假如你的屏幕是1920*1080,那么右下角的坐標就是(1919, 1079),因為坐標是從0開始的,而不是從1開始的,這一點要格外注意。

PyAutoGUI雖然有很多函數,但是函數的作用基本上就是單擊/雙擊鼠標、敲擊/按下/彈起按鍵這樣的,函數參數也就是點擊間隔、點擊按鍵這樣很簡單的參數。所以我就不列例子了,總之用起來非常簡單。

函數簡介

下面來介紹一下PyAutoGUI的函數。先來看看鼠標操作函數,主要是點擊、拖動、滑動滾輪這些操作。

鍵盤操作函數,主要就是按鍵、組合鍵操作。

提示框函數,可以用來顯示警告、確認、提示和密碼輸入對話框,增強程序可操作性。顯示對話框的時候,程序會暫停,直到用戶處理對話框。

截圖函數,可以從屏幕上截圖,也可以根據已有圖片從屏幕上定位。主要用途是事先保存一些按鈕圖片,然后從屏幕上識別定位來點擊按鈕。

操作實例

首先來看看官網的一個畫圖例子,我們需要打開一個畫圖程序的窗口,然后將它放到全屏。然后運行下面的代碼,然后切換到畫圖窗口。等待3秒鐘以后就可以看到PyAutoGUI開始畫圖了。 

  1. import pyautogui  
  2. distance = 100  
  3. pyautogui.moveTo(400, 300)  
  4. while distance > 0:  
  5.     pyautogui.drag(distance, 0, duration=0.1)  
  6.     distance -5  
  7.     pyautogui.drag(0, distance, duration=0.1)  
  8.     pyautogui.drag(-distance, 0, duration=0.1)  
  9.     distance -5  
  10.     pyautogui.drag(0, -distance, duration=0.1) 

結果如下。其實這個畫圖的代碼很簡單,就是一圈一圈縮小,然后調用drag函數拖住畫筆不放。

[[426595]]

再來看一個圖片識別的例子,這個例子需要先安裝OpenCV庫和opencv-python包。安裝之后就可以運行下面的例子了。這個例子保存了windows 10計算機的幾個按鈕截圖,然后通過圖形識別的方式找到并點擊按鈕執行操作。注意下面用到了confidence參數,即使圖片沒有完全匹配也可以識別到。 

  1. import pyautogui  
  2. import time  
  3. time.sleep(3)  
  4. # Windows計算器的按鈕截圖  
  5. five = '5.png'  
  6. eight = '8.png'  
  7. multiply = 'multiply.png' 
  8. equals = 'equals.png'  
  9. # 圖片識別和點擊的函數  
  10. def find_and_click(image):  
  11.     x, y = pyautogui.locateCenterOnScreen(image, confidence=0.9)  
  12.     pyautogui.click(x, y)  
  13. # 執行5*8 
  14. find_and_click(five)  
  15. find_and_click(multiply)  
  16. find_and_click(eight)  
  17. find_and_click(equals) 

代碼以及圖片的完整例子可以查看我的github,地址如下。 

  1. https://github.com/techstay/python-study/tree/master/pyautogui-sample 

通過PyAutoGUI,你可以輕松的對圖形界面進行自動化編程,按照屏幕位置或者圖片識別來定位控件的位置,然后通過編程來控制鼠標和鍵盤輸入。這和按鍵精靈的道理是一樣的。但是Python可以利用廣泛的第三方包來實現更多的功能,這一點是按鍵精靈無法相比的。 

 

責任編輯:龐桂玉 來源: 馬哥Linux運維
相關推薦

2024-06-17 10:34:12

2022-06-23 09:17:07

PythonGUIPyAutoGUI

2025-04-23 08:15:00

2018-01-15 10:30:00

AndroidPython 開發

2022-06-13 09:12:04

PythonPDF代碼

2020-12-01 07:01:41

CSS工具重構

2024-05-29 11:16:33

PythonExcel

2017-12-17 21:58:18

2021-02-01 12:24:40

Python日志Expect

2023-12-21 11:12:31

Node.js.NET開源庫

2024-05-21 09:52:19

2022-02-18 13:12:49

人工智能自動化技術

2022-02-17 17:37:17

超級自動化人工智能AI

2020-04-29 11:28:54

智能自動化機器人流程自動化AI

2010-12-06 09:59:58

2022-11-15 10:20:55

物聯網傳感器

2023-11-21 22:48:50

2022-07-28 16:38:11

數字化轉型

2012-02-27 17:34:12

Facebook自動化

2020-12-08 06:20:49

前端重構Vue
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久久久久久久久一区二区 | 色综合99 | 在线观看中文字幕dvd播放 | 亚洲成人精品免费 | 精品国产欧美一区二区三区成人 | 亚洲网站在线观看 | 午夜久久久久久久久久一区二区 | 亚洲综合激情 | 夜夜爽99久久国产综合精品女不卡 | 久久99视频精品 | 二区av| 国产精品自产拍在线观看蜜 | 久精品视频 | 中文在线一区二区 | 艹逼网| 一区在线观看 | 国产一级特黄aaa大片评分 | 一区二区在线 | 亚洲不卡在线观看 | 999久久久 | 超碰在线免费av | 午夜影院操 | 天天艹天天干天天 | 91久久精品一区二区二区 | 亚洲第一网站 | 久久久久久久久久久福利观看 | 玖玖在线精品 | 久久精品无码一区二区三区 | 亚洲成人av在线 | 91在线观看 | 亚洲国产中文字幕 | 天天插天天操 | 久久精品视频网站 | 激情小说综合网 | 一区二区av| 亚洲午夜精品视频 | japanhdxxxx裸体 | 国产高清免费 | 免费日韩网站 | 亚洲永久 | 精品人伦一区二区三区蜜桃网站 |