【发布时间】:2021-01-18 19:10:51
【问题描述】:
我想在网站上为 Piano Tiles 制作 Python Bot。我的代码在code1中没有错误,但在code2中我总是遇到同样的错误。我只改变了跑马者的位置,仅此而已。
代码1:
#https://www.agame.com/game/magic-piano-tiles
def click(x,y):
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,0,0)
time.sleep(0.1)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,0,0)
print("go")
while keyboard.is_pressed("q")==False:
if pyautogui.pixel(465,450)[0]==0: click(465,450)
if pyautogui.pixel(555,450)[0]==0: click(555,450)
if pyautogui.pixel(658,450)[0]==0: click(658,450)
if pyautogui.pixel(748,450)[0]==0: click(748,450)
代码2:
#https://www.silvergames.com/de/magic-tiles-3#play
def click(x,y):
win32api.SetCursorPos((x,y))
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,0,0)
time.sleep(0.1)
win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,0,0)
time.sleep(5)
print("go")
click(1005,675)
y=507
while True:
if pyautogui.pixel(672,y)[0]==0: click(672,y)
if pyautogui.pixel(783,y)[0]==0: click(783,y)
if pyautogui.pixel(892,y)[0]==0: click(892,y)
if pyautogui.pixel(1000,y)[0]==0: click(1000,y)
我还在每个位置设置了 y 变量。
错误: 去
Traceback(最近一次调用最后一次):文件 "e:/Coding/vs_code_sachen/python_sachen/einzelne_sachen/piano_tiles_bot2.py", 第 20 行,在 如果 pyautogui.pixel(672,y)[0]==0: click(672,y) 文件 "C:\Users\danie\AppData\Local\Programs\Python\Python38\lib\site-packages\pyscreez_初始化_.py", 第 584 行,以像素为单位 返回(r,g,b)文件“C:\Users\danie\AppData\Local\Programs\Python\Python38\lib\contextlib.py”, 第 120 行,在 退出 next(self.gen) 文件 "C:\Users\danie\AppData\Local\Programs\Python\Python38\lib\site-packages\pyscreez_init_.py", 第 113 行,在 __win32_openDC
raise WindowsError("windll.user32.ReleaseDC failed : return 0") OSError: windll.user32.ReleaseDC failed : return 0
【问题讨论】:
-
这是一个错误。看到这个答案:stackoverflow.com/a/67988905/495990
标签: python error-handling bots