基於影象模板匹配的按鈕模擬點選 based on python
阿新 • • 發佈:2018-12-31
程式碼地址,也不要吝惜打一顆星~
https://github.com/TQCAI/auto_click_button_by_template_matching
目錄:
最近遇到一個問題,在mathtype中用輸入面板公式的時候,
沒有快捷鍵,就連Ctrl+Z的撤銷都沒有,簡直頭痛。於是我想到了用按鍵精靈來解決。
一個只有按鈕沒有快捷鍵的介面:
模板匹配
參考文獻:Python+OpenCV學習(7)—模板匹配 - CSDN部落格
模板匹配是一種在圖片中找到目標圖片座標位置的影象處理技術,如圖:
通過這種技術,我們首先對整個螢幕進行截圖:
img = np.array(ImageGrab.grab())
然後就在螢幕中查詢按鈕圖片的座標位置即可。
模擬滑鼠事件
參考文獻:如何使用python來模擬滑鼠點選(將通過例項自動化模擬在360瀏覽器中自動搜尋”python”) - huidaoli - 部落格園
本程式的執行步驟如下:
- 通過模板匹配找到按鈕的座標
- 獲取滑鼠的當前位置
- 將滑鼠移動到目標按鈕區域,模擬點選操作
- 讓滑鼠回到原來的區域
托盤式的操作介面
參考文獻:PyQt5 系統托盤圖示和訊息通知 - 即刻 - 部落格園
程式執行後將在系統托盤區顯示,避免干擾使用者,並且方便操作:
托盤介面:
單擊托盤按鈕後顯示程式執行介面:
多執行緒+HOOK監聽實現快捷鍵捕捉
參考文獻:GitHub - ethanhs/pyhooked: Pure Python hotkey hook, with thanks to pyHook and pyhk
本程式使用了GitHub上的一個開源pyhook庫,用於監聽鍵盤事件。
因為需要監聽,所以需要兩個執行緒,一個執行緒為主介面,一個執行緒為監聽程式。
實現效果