对于我的DIY访问控制系统,我在一个连接到磁条读卡器的覆盆子Pi上运行Debian。当刷卡时,读卡器像键盘一样将磁条上的数据写入USB端口。例如,把它插入计算机,打开一个文本编辑器,然后刷卡,你会看到一串数据打印出来,就像你用键盘键入的一样。在
简单连接图:
Client <--ssh--> Host + card reader
唯一的问题是我在ssh上运行Python脚本,它不能直接听到键盘输入。在
如何让Python监听来自MagStripe阅读器的键盘事件?(我需要使用键盘记录器吗?PyGame的键盘绑定?)在
谢谢你的帮助!在
Tags:
在Linux上,可以通过/dev/input访问USB键盘。在
请参见:format of /dev/input/event*?-该问题的答案包括两个用于获取事件的不同Python模块,以及指向更多文档的链接。在
要将密钥代码转换为ASCII码,请参见How can I translate Linux keycodes from /dev/input/event* to ASCII in Perl?
您可能需要是root用户,或者更改对/dev/input的权限。在
将程序分为两部分可能是值得的:一部分是在raspberry pi上启动的服务,默认情况下从键盘设备(读卡器)获取stdin,另一部分通过ssh提供远程访问功能。这样可以避免直接在/dev中处理设备。在
相关问题 更多 >
编程相关推荐