我正在做一个项目,在这个项目中,我必须根据用户的击键风格开发生物密码。 假设一个用户输入密码20次,他的击键记录如下
保持时间:按一个特定键的时间。 有向图时间:按不同键所需的时间。在
假设用户键入密码“COMPUTER”。我需要知道每一个键按下的时间。比如:
以上密码的保持时间为
C--200毫秒 O--130毫秒 M--150毫秒 毫秒--175便士 U——320毫秒 T——230毫秒 E--120毫秒 R——300毫秒
这背后的理性是,每个用户都有不同的保持时间。假设一个老人在输入密码,他比一个学生要花更多的时间。它对特定的人来说是独一无二的。 要做这个项目,我需要记录每个按键的时间。 如果有人能指导我如何获得这些时间,我将不胜感激。在
从这里编辑。。 语言不重要,但我更喜欢用C语言。我对获取数据集更感兴趣。在
看看ncurses。这是一个很好的工具来获取有关终端按键的信息。在
也看看this链接。在
你说过你更喜欢用C语言,但是因为你给它加了Python标签。。。:)
另外,既然你说你要构建一个数据集,我假设你必须邀请用户输入任意文本,所以你需要某种界面(图形或其他)。在
下面是一个使用pygame的快速示例。你可以简单地修改它,让用户输入特定的单词,但是,事实上,它只允许用户输入任意文本,记录所有按键的按键时间,并按用户退出时(即用户按Esc键时)键入的顺序打印每次保持和有向图时间。在
正如Kibibu所注意到的,向用户实时显示他正在键入的内容会导致延迟,这可能会掩盖实际的按键时间,因此此代码只显示用户在键入“Enter”时输入的内容。在
更新:它现在计算有向图和保持时间(不包括两种情况下的Enter)。在
更新2:根据Adi的请求,从显示平均值改为按顺序显示每个单独的时间。在
记录KeyDown和KeyUp事件,并对每个事件的时间戳进行区分。在
http://code.activestate.com/recipes/203830/
编辑: 您可能想看看wxPython,它会帮助您:
http://www.wxpython.org/onlinedocs.php
特别是:
http://docs.wxwidgets.org/stable/wx_wxkeyevent.html#wxkeyevent
相关问题 更多 >
编程相关推荐