Python 使用非活动终端窗口捕获键或鼠标按下以结束程序

Python 使用非活动终端窗口捕获键或鼠标按下以结束程序,python,linux,mouseevent,keypress,Python,Linux,Mouseevent,Keypress,我正试图通过让python在ubuntu系统上为我点击鼠标来自动化一些cookieclicker风格的游戏(在网站上)。点击部分功能正常,但我似乎无法用CTRL-C取消我的程序,因为浏览器窗口处于活动状态,因为我一直在用移动的鼠标点击它。现在我有一个定时的解决方案,但这并不是最佳的 下面是我非常简单的代码: from pymouse import PyMouse from pymouse import PyMouseEvent import time from datetime import d

我正试图通过让python在ubuntu系统上为我点击鼠标来自动化一些cookieclicker风格的游戏(在网站上)。点击部分功能正常,但我似乎无法用CTRL-C取消我的程序,因为浏览器窗口处于活动状态,因为我一直在用移动的鼠标点击它。现在我有一个定时的解决方案,但这并不是最佳的

下面是我非常简单的代码:

from pymouse import PyMouse
from pymouse import PyMouseEvent
import time
from datetime import datetime

m = PyMouse()

x,y = m.position() #gets mouse current position coordinates

print x
print y

finish = datetime(2016, 3, 21, 14, 1)
print finish

while datetime.now() < finish:
    for y in range(160,520,3):  
        time.sleep(0.005)
        m.click(470,y,1)
从pymouse导入pymouse
从pymouse导入PyMouseEvent
导入时间
从日期时间导入日期时间
m=PyMouse()
x、 y=m.position()#获取鼠标当前位置坐标
打印x
打印y
完成=日期时间(2016,3,21,14,1)
印刷整理
while datetime.now()
我查看了PyMouse示例,找到了一个通过右键单击来结束程序的部分,但是如果我尝试将其结合起来,我似乎无法使其工作

from pymouse import PyMouse
from pymouse import PyMouseEvent
import time
from datetime import datetime


class Clickonacci(PyMouseEvent):

    def cookies(self):
        m = PyMouse()

        x,y = m.position() #gets mouse current position coordinates

        print x
        print y

        finish = datetime(2016, 3, 21, 14, 41)
        print finish

        while datetime.now() < finish:      
            for y in range(160,520,3):  
                time.sleep(0.005)
                m.click(470,y,1)


    def __init__(self):
        PyMouseEvent.__init__(self)
        self.cookies()

    def click(self, x, y, button, press):
        if button == 2:
            if press:
                self.stop()

C = Clickonacci()
C.run()
从pymouse导入pymouse
从pymouse导入PyMouseEvent
导入时间
从日期时间导入日期时间
类Clickonacci(PyMouseeEvent):
def cookies(自我):
m=PyMouse()
x、 y=m.position()#获取鼠标当前位置坐标
打印x
打印y
完成=日期时间(2016,3,21,14,41)
印刷整理
while datetime.now()
这使我可以通过右键单击退出程序并打印初始鼠标坐标,但它不能控制鼠标在给定位置上自动单击

也许任何有更多经验的人都可以解决这个问题,让它发挥作用

编辑:

我是通过pip安装pymouse安装的,不确定它的版本是否与

因此,我正在寻找一种方法,通过右键单击鼠标或按某个键来结束我的程序,即使我启动程序的终端窗口不是活动窗口