如何用Python守护进程捕捉按键?

4 投票
2 回答
2365 浏览
提问于 2025-04-15 18:02

我正在尝试为一个Sheevaplug设备编写一个类似收银机的应用程序,具体需求如下:

  1. 从刷卡器获取输入(我了解到,大多数磁条卡读卡器会模拟键盘输入,所以我基本上是想捕捉这些输入)
  2. 不需要图形界面(X)
  3. 在后台运行(守护进程)

我看到了一些代码示例,它们会等待标准输入(STDIN),但这不适用,因为这是一个没有登录的后台进程,实际上甚至没有显示器。

我还在这个网站上找到了一段代码片段在其他地方

from struct import unpack
port = open("/dev/input/event1","rb")    

while 1:    
    a,b,c,d = unpack("4B",port.read(4))    
    print a,b,c,d

虽然这段代码是我目前找到的最接近我需求的,但它只生成一系列数字,这些数字都是不同的,我不知道怎么把它们转化为有用的值。

显然,我在这里遗漏了一些东西,但我不知道是什么。有人能告诉我怎么继续吗?

2 个回答

1

这个格式在内核文档5. 事件接口部分有详细说明。

2

Linux内核的第5部分在输入文档中解释了事件接口中每个值的含义。

撰写回答