对于需要自动化的的朋友来说,有一些现存的模块可以调用,比如pynput,pyautogui,如果你熟悉windowsAPI的话其实也有一些api函数可供调用,这些方法大都在win32gui里面可以找到,这里简单介绍一下pyautogui的最常用的方法
import time
import pyautogui as auto
#屏幕size(width=1920, height=1080) 列表类型 返回屏幕大小
size = auto.size()
print(size[0])
#position(x=418, y=668) 列表类型 返回当前鼠标位置
p = auto.position()
print(p)
#判断给定的坐标是否在屏幕范围内 retrun true or false
bl = auto.onScreen(10000,100)
print(bl)
#使得鼠标移动到绝对坐标(x,y,)duration为所需要花费的时间
auto.moveTo(500,100,duration=5)
#rel=relative 相对当前的偏移
auto.moveTo(500,100,duration=2)
auto.moveRel(xOffset=200,yOffset=200,duration=2)
#auto.click(x=1000,y=800,num_of_click,duration=0,'right'/'left'/'middle')
#mouseDown事件和mouseUp事件可以分开
#结合鼠标移动可以实现大范围选择 mouseUP(x,y,button='left'/'right')
'''auto.mouseDown(800,400,'left')
auto.moveTo(800,600)
#键盘的操作
#指定地点输出文字
time.sleep(2)
auto.moveTo(800,800)
auto.typewrite("hello",0.05)
#该方法每次只能打印一个键
time.sleep(1)
auto.keyDown('a_key_name') #auto.typewrite("str")可以打印多个键一起
auto.keyUp(a_key_name)
‘’’
#hotkey()可以实现对文本的复制,粘贴
#auto.hotkey('ctrl',"c") copy
#auto.hotkey('ctrl','v') paste
time.sleep(1)
auto.mouseDown(800,400,'left')
auto.moveTo(800,500,1)
auto.hotkey('ctrl','c')
##Message Box Functions##
auto.alert()
auto.confirm()
#prompt()函数可以得到用户的输入
auto.prompt()
#配合auto.moveTo()可以实现大片选取
#dragTo(x,y,button=button) button=""必不可少
'''auto.dragTo(800,500,1,button='left')'''
#键入键盘上的某个键
for i in range(6):
auto.press("a")
pyautogui.click(x,y,clicks)
#在当前屏幕中查找指定图片(图片需要由系统截图功能截取的图)
coords = pyautogui.locateOnScreen('folder.png')
#获取定位到的图中间点坐标
x,y=pyautogui.center(coords)
#右击该坐标点
pyautogui.rightClick(x,y)