python鼠标、键盘、截屏自动化相关

环境搭建

pip install PyUserInput
pip install pyautogui

pymouse的使用 鼠标

from pymouse import PyMouse
m = PyMouse()
m.position()#获取当前坐标的位置
m.move(x,y)#鼠标移动到xy位置
m.click(x,y)#移动并且在xy位置点击
m.click(x,y,1|2)#移动并且在xy位置点击,左右键点击
m.click(x,y,1)#移动并且在xy位置点击,左键点击
m.click(x,y,2)#移动并且在xy位置点击,右键点击(双击)

pykeyboard的使用 键盘

from pykeyboard import PyKeyboard
k.type_string('abcdefg')#输入内容
k.press_key('a')#按a键
k.release_key('a')#松开a键
k.tap_key('a')#点击a键
k.tap_key('a', n=2, interval=5)#点击a键2次,每次间隔5秒
k.tap_key(k.function_keys[5])#功能键F5

# Windows
k.tap_key(k.alt_key)
# Mac
k.tap_key('Alternate')

# Mac example
k.press_keys(['Command','shift','3'])
k.press_keys(['Command','q'])
# Windows example
k.press_keys([k.windows_l_key,'d'])

pyautogui 截图

import pyautogui
import cv2
img = pyautogui.screenshot(region=[0,0,100,100]) # x,y,w,h
img.save('screenshot.png')
# 注意数字像素位数*2
img = pyautogui.screenshot(region=[1738, 532, 109, 40])
img.save('test.png')

其他

使用PyMouseEvent和PyKeyboardEvent是用于监听鼠标和键盘输入的框架。
PyMouseEvent的例子:

from pymouse import PyMouseEvent

def fibo():
    a = 0
    yield a
    b = 1
    yield b
    while True:
        a, b = b, a+b
        yield b

class Clickonacci(PyMouseEvent):
    def __init__(self):
        PyMouseEvent.__init__(self)
        self.fibo = fibo()

    def click(self, x, y, button, press):
        '''Print Fibonacci numbers when the left click is pressed.'''
        if button == 1:
            if press:
                print(self.fibo.next())
        else:  # Exit if any other mouse button used
            self.stop()

C = Clickonacci()
C.run()

版权声明:除特别注明外,本站所有文章均为王晨曦个人站点原创

转载请注明:出处来自王晨曦个人站点 » python鼠标、键盘、截屏自动化相关

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注