我编写了这段代码,用鼠标点击x,y位置100,200,之后我按下退格键:
import win32api, win32con
import time
def click(x,y):
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
def press_back():
win32api.keybd_event(0x08,0,0,0) #click backspace
time.sleep(0.1)
win32api.keybd_event(0x08,0,2,0) #release backspace
click(100,200)
press_back()
我现在要做的是检查100,200处的颜色是否为红色。我怎么能这样做?
编辑: 我有解决方案......
color = win32gui.GetPixel(win32gui.GetDC(win32gui.GetActiveWindow()), 100 , 200)
非常感谢
答案 0 :(得分:1)
答案
color = win32gui.GetPixel(win32gui.GetDC(win32gui.GetActiveWindow()), 100 , 200)
你得到一个整数,对于某人(像我一样)可能不是很友好。
如果您想要RGB元组,可以查看以下答案:RGB Int to RGB - Python。
def rgbint2rgbtuple(RGBint):
blue = RGBint & 255
green = (RGBint >> 8) & 255
red = (RGBint >> 16) & 255
return (red, green, blue)
最后,你要检查颜色是否为红色,如果你也接受相似的颜色,那不仅仅是纯红色(即(255,0, 0))。