将鼠标和键盘移动记录到 TXT 文件中 - Python
Record Mouse and Keyboard Movements into TXT file - Python
我很想知道是否有一种方法可以存储鼠标和键盘的移动来自动执行一些重复性任务。
现在,我可以像这样使用 pyautogui 发送鼠标和键盘移动:
pyautogui.moveTo(X, Y) # Move the mouse to XY coordinates.
pyautogui.write('Chrome', interval=0.25) # Write 'Chrome'
pyautogui.press('enter') # Press the Enter key
我知道那句老话
The computer will always do exactly what you TELL it to do.
但是,在这种情况下,我想向计算机展示它是如何做的,并将这些操作记录到文本文件或可以在脚本中的某个时刻调用的文件中。如果说得通。
像上面那样只喊出每个 stroke/click 会更有意义/更实用吗?
如果我没理解错的话,您想要一个 txt 文件中的操作日志,然后由 pyautogui
读取和复制。
有许多类似 pynput
的库可以提供简单的侦听器来监听鼠标点击、键盘输入等操作...像这样:
from pynput.mouse import Listener
import logging
logging.basicConfig(filename="mouse_log.txt", level=logging.DEBUG, format='%(asctime)s: %(message)s')
def on_move(x, y):
logging.info("Mouse moved to ({0}, {1})".format(x, y))
def on_click(x, y, button, pressed):
if pressed:
logging.info('Mouse clicked at ({0}, {1}) with {2}'.format(x, y, button))
def on_scroll(x, y, dx, dy):
logging.info('Mouse scrolled at ({0}, {1})({2}, {3})'.format(x, y, dx, dy))
with Listener(on_move=on_move, on_click=on_click, on_scroll=on_scroll) as listener:
listener.join()
然后您将有一个要解析的 mouse_log.txt
文件并相应地执行 pyautogui
操作。这引入了更高级别的间接寻址并且可能更容易出错,所以我会使用您提到的普通 pyautogui
脚本。
我很想知道是否有一种方法可以存储鼠标和键盘的移动来自动执行一些重复性任务。
现在,我可以像这样使用 pyautogui 发送鼠标和键盘移动:
pyautogui.moveTo(X, Y) # Move the mouse to XY coordinates.
pyautogui.write('Chrome', interval=0.25) # Write 'Chrome'
pyautogui.press('enter') # Press the Enter key
我知道那句老话
The computer will always do exactly what you TELL it to do.
但是,在这种情况下,我想向计算机展示它是如何做的,并将这些操作记录到文本文件或可以在脚本中的某个时刻调用的文件中。如果说得通。
像上面那样只喊出每个 stroke/click 会更有意义/更实用吗?
如果我没理解错的话,您想要一个 txt 文件中的操作日志,然后由 pyautogui
读取和复制。
有许多类似 pynput
的库可以提供简单的侦听器来监听鼠标点击、键盘输入等操作...像这样:
from pynput.mouse import Listener
import logging
logging.basicConfig(filename="mouse_log.txt", level=logging.DEBUG, format='%(asctime)s: %(message)s')
def on_move(x, y):
logging.info("Mouse moved to ({0}, {1})".format(x, y))
def on_click(x, y, button, pressed):
if pressed:
logging.info('Mouse clicked at ({0}, {1}) with {2}'.format(x, y, button))
def on_scroll(x, y, dx, dy):
logging.info('Mouse scrolled at ({0}, {1})({2}, {3})'.format(x, y, dx, dy))
with Listener(on_move=on_move, on_click=on_click, on_scroll=on_scroll) as listener:
listener.join()
然后您将有一个要解析的 mouse_log.txt
文件并相应地执行 pyautogui
操作。这引入了更高级别的间接寻址并且可能更容易出错,所以我会使用您提到的普通 pyautogui
脚本。