python 列出鼠标点击坐标

标签 python python-2.7 click mouseevent onclicklistener

我想记录有限次鼠标点击的 x 和 y 坐标并将其附加到列表中(在本例中为 10(这将是一个变量))。脚本通常需要记录在桌面、浏览器或应用程序上的点击。

我基本上是在尝试为一个更大的桌面自动化程序的灵活简单的宏部分创建一个坐标列表(非常简单和重复的工作,但布局确实发生了变化,这就是为什么重新记录坐标是关键)。

我搜索了“自动化无聊的东西”,但无法让 pyautogui 记录位置(它确实完美地执行了鼠标位置,但不是预记录列表)。此外,这不能像 pygame 中那样仅限于单个帧。

我是菜鸟,如有任何建议,我们将不胜感激。我已经包含了我收到的错误的图像。列表部分尚未包括在内,我稍后会添加。

from pynput import mouse

NumberOfMouseClicks = 0

def on_click(x, y, button, pressed):
    print(x, y)
    pynput.mouse.Listener.stop

while NumberOfMouseClicks < 10 :
    NumberOfMouseClicks = NumberOfMouseClicks + 1
    with mouse.Listener(on_click=on_click) as listener:
        listener.join()

enter image description here

最佳答案

您还没有导入 pynput 包,只有 mouse 从中导入。 所以不是

pynput.mouse.Listener.stop

你应该使用

mouse.Listener.stop

鼠标事件在on_click函数中处理,while循环没有用。您可以这样使用它:

from pynput import mouse

class MyException(Exception):pass

NumberOfMouseClicks = 0

def on_click(x, y, button, pressed):
    global NumberOfMouseClicks
    print(x, y)
    NumberOfMouseClicks = NumberOfMouseClicks + 1
    if (NumberOfMouseClicks==10):
        raise MyException(button)

with mouse.Listener(on_click=on_click) as listener:
    try:
        listener.join()
    except MyException as e:
        pass

关于python 列出鼠标点击坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43174133/

相关文章:

python - 如何为包含特定项目的列表过滤 DataFrame 列

angularjs - 触发点击 AngularJS 动态创建的元素

jQuery父子元素点击事件

Python doctest 失败示例

sqlalchemy 中的 python 继承

python - tkinter 文本输入验证

android - Android 中的委托(delegate)(常见)点击监听器

python - 获取边末端的节点 g.edge_iter

python - 尝试将值分配给 groupby 对象的新列时出现 NotImplementedError

python - 从调用导入的 python 文件中获取名称