pyautogui函数解析分类

 

 

 

pyautogui.FAILSAFE=True

#会记录每一次点击click的截图

 pyautogui.LOG_SCREENSHOTS=True

 

'size','position','center', 'onScreen'

onScreen  pyautogui.onScreen(x, y)  判断(x,y)是否在屏幕上

pyautogui.size()  # 屏幕的宽度和高度 

pyautogui.position()  # 鼠标当前位置 

 

'pixel', 'pixelMatchesColor'

pix = pyautogui.screenshot().getpixel((220, 200))  # 获取坐标(220,200)所在屏幕点的RGB颜色

positionStr = ' RGB:(' + str(pix[0]).rjust(3) + ',' + str(pix[1]).rjust(3) + ',' + str(pix[2]).rjust(3) + ')'

print(positionStr)  # 打印结果为RGB:( 60, 63, 65)

pix = pyautogui.pixel(220, 200)  # 获取坐标(220,200)所在屏幕点的RGB颜色与上面三行代码作用一样 

 

# 如果你只是要检验一下指定位置的像素值,可以用pixelMatchesColor(x,y,RGB)函数,把X、Y和RGB元组值穿入即可

# 如果所在屏幕中(x,y)点的实际RGB三色与函数中的RGB一样就会返回True,否则返回False

# tolerance参数可以指定红、绿、蓝3种颜色误差范围

pyautogui.pixelMatchesColor(100, 200, (255, 255, 255))

pyautogui.pixelMatchesColor(100, 200, (255, 255, 245), tolerance=10) 

 

'drag', 'dragRel', 'dragTo',

dragTo(x,y,duration,button)  拖动到绝对的点

drag 是相对坐标


'move', 'moveRel', 'moveTo',

moveTo(x,y,duration)  duration持续时间  
move是相对坐标

 

'keyDown', 'keyUp' ,'press','hotkey','hold',

 

 press包含了keydown和keyup


'mouseDown', 'mouseUp'

可以实现类似拖动效果,和move组合使用

 

 

'screenshot'

screenshot()函数会返回Image对象,如果带参数,会保存到指定地点

im1 = pyautogui.screenshot()

im1.save(img_path)   保存

如果你不需要截取整个屏幕,还有一个可选的region参数。你可以把截取区域的左上角XY坐标值和宽度、高度传入截取

im = pyautogui.screenshot(region=(0, 0, 300 ,400))

'countdown','sleep',

'mouseInfo', 'password', 'alert', 'confirm','prompt',

'locate', 'locateAll', 'locateAllOnScreen', 'locateCenterOnScreen', 'locateOnScreen', 'locateOnWindow',

locateOnScreen获得文件图片在现在的屏幕上面的坐标,返回的是一个元组(top, left, width, height),如果截图没找到,pyautogui.locateOnScreen()函数返回None 

locateCenterOnScreen 匹配图片的中心点

locateAllOnScreen   匹配屏幕所有与目标图片的对象 

 

locateOnScreen()函数可以把grayscale参数设置为True来加速定位(大约提升30%),默认为False,

pyautogui.locateOnScreen(img_path, grayscale=True)
confidence=0.5 置信度

 

'getActiveWindow', 'getActiveWindowTitle', 'getAllTitles', 'getAllWindows', 'getWindowsAt', 'getWindowsWithTitle'

'leftClick', 'rightClick','middleClick','doubleClick','tripleClick','click'

 

 

'scroll', 'vscroll','hscroll',
'typewrite', 'write'

不能输出中文,可以用剪切板来实现

posted on 2022-08-01 15:10  帅胡  阅读(1046)  评论(0编辑  收藏  举报

导航