python控制鼠标点击标准模块_Python直接控制鼠标键盘模块 pyautogui
pip install pyautogui
官網:
http://pyautogui.readthedocs.io/en/latest/
github:
https://github.com/asweigart/pyautogui
介紹:
PyAutoGUI可以模擬移動鼠標,單擊鼠標,用鼠標拖動,按鍵,按住鍵,還可以按鍵盤熱鍵組合。
基礎操作
>>> import pyautogui
# 獲取屏幕尺寸
>>> screenWidth, screenHeight = pyautogui.size()
# 獲取當前坐標位置
>>> currentMouseX, currentMouseY = pyautogui.position()
# 鼠標移動到坐標為100,150的位置
>>> pyautogui.moveTo(100, 150)
# 鼠標左擊
>>> pyautogui.click()
# 鼠標移動10個像素
>>> pyautogui.moveRel(None, 10) # move mouse 10 pixels down
# 鼠標雙擊
>>> pyautogui.doubleClick()
>>> pyautogui.moveTo(500, 500, duration=2, tween=pyautogui.easeInOutQuad) # use tweening/easing function to move mouse over 2 seconds.
# 鍵盤輸入Hello world! 間隔為0.25秒
>>> pyautogui.typewrite('Hello world!', interval=0.25) # type with quarter-second pause in between each key
# 按鍵 esc
>>> pyautogui.press('esc')
# shift按下
>>> pyautogui.keyDown('shift')
# 按鍵左方向鍵
>>> pyautogui.press(['left', 'left', 'left', 'left', 'left', 'left'])
# shift彈起
>>> pyautogui.keyUp('shift')
# 組合件 ctrl +c
>>> pyautogui.hotkey('ctrl', 'c')
保護措施:
PyAutoGUI函數增加延遲為2.5秒:
import pyautogui
pyautogui.PAUSE = 2.5
當pyautogui.FAILSAFE = True時,如果把鼠標光標在屏幕左上角,PyAutoGUI函數就會產生pyautogui.FailSafeException異常。
import pyautogui
pyautogui.FAILSAFE = True
鼠標操作:
移動
import pyautogui
width, hight = pyautogui.size()
pyautogui.moveTo(width/2, hight/2) # 基本移動
pyautogui.moveTo(200, 200, duration=2) # 移動過程持續2s完成
pyautogui.moveTo(None, 100) # X方向不變,Y方向移動到100
pyautogui.moveRel(-40, 500) # 相對位置移動
拖拽
拖拽的意思是:按下鼠標鍵并拖動鼠標。PyAutoGUI提供了兩個函數:dragTo() 和 dragRel()。它的參數和moveTo() 和 moveRel() 一樣。
點擊+向下拖動
pyautogui.click(941, 34, button='left')
pyautogui.dragRel(0, 100, button='left', duration=5)
點擊
click()函數就是讓鼠標點擊,默認是單擊左鍵,參數可以設置:
pyautogui.click(x=moveToX, y=moveToY, clicks=num_of_clicks, interval=secs_between_clicks, button='left')
其中,button屬性可以設置成left,middle和right。
pyautogui.doubleClick():鼠標雙擊,其實就是執行兩次click()函數。
pyautogui.rightClick():右擊
pyautogui.middleClick():中擊
pyautogui.tripleClick(
pyautogui.click(300, 400, button='right') # 包含了move的點擊,右鍵
pyautogui.click(clicks=2, interval=0.25) # 雙擊,間隔0.25s
雙擊左鍵
pyautogui.click(clicks=2)
兩次單擊之間停留0.25秒
pyautogui.click(clicks=2, interval=0.25)
三擊右鍵
pyautogui.click(button='right', clicks=2, interval=0.25)
鼠標按下和松開兩個事件可以分開處理:
pyautogui.mouseDown(x=moveToX, y=moveToY, button='left')
pyautogui.mouseUp(x=moveToX, y=moveToY, button='left')
滾輪
它只接受一個整數。如果值為正往上滾,值為負往下滾。
pyautogui.scroll(-10)
鍵盤操作
輸入文字
pyautogui.click(100, 200)
pyautogui.typewrite('hello world!')
如果是中文鍵是復制
精確控制鍵盤
按鍵的按下和釋放 和鼠標按鍵非常類似。
keyDown():按下某個鍵
keyUp():松開某個鍵
press():一次完整的擊鍵,前面兩個函數的組合。
pyautogui.press('shift') # 切換輸入法的中英文
pyautogui.press(['#', ' ']) # press 可以對單個字符或者列表進行操作
pyautogui.press(['c', 'h', 'e', 'n'])
pyautogui.press(['x', 'i','n'])
pyautogui.press(['m', 'i', 'n','g'])
pyautogui.press(' ')
# 陳新明
組合鍵hotKey
pyautogui.hotkey('shift', 'a') # 可以使用組合鍵,等同于以下代碼
'''
pyautogui.keyDown('shift')
pyautogui.keyDown('a')
pyautogui.keyUp('shift')
pyautogui.keyUp('a')
'''
截圖
import pyautogui
im1 = pyautogui.screenshot()
im2 = pyautogui.screenshot('my_screenshot.png')
screenshot()需要花費100毫秒
如果你不需要截取整個屏幕,還有一個可選的region參數。你可以把截取區域的左上角XY坐標值和寬度、高度傳入截取。
im = pyautogui.screenshot(region=(0, 0, 300 ,400))
讀取截圖的圖片
import pyautogui
pyautogui.locateOnScreen('my_screenshot.png')
總結
以上是生活随笔為你收集整理的python控制鼠标点击标准模块_Python直接控制鼠标键盘模块 pyautogui的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 接口 500_python接口的自我修炼
- 下一篇: randn函数加噪声_损失函数 (Los