本期导读 在平常的工作和学习中几乎每个人都会注册一些平台,在PC端登陆的时候需要用键盘输入相应的账号和密码,其中密码一般都是暗文(如:******),但是 暗文真的就安全了吗?
在平常的工作和学习中几乎每个人都会注册一些平台,在PC端登陆的时候需要用键盘输入相应的账号和密码,其中密码一般都是暗文(如:******),但是暗文真的就安全了吗?今天给大家带来两个让你瞬间“裸奔”的Python库,仅限于学习交流,希望对你有所帮助。
1.1 安装pynput
pip install pynput
1.2 使用pynput
from pynput.keyboard import Key,Listener
Key:
按下键时:
# 按下键时 def on_press(key): try: # 普通按键 print('按下键: {0} '.format(key.char)) except : # 特殊按键 print('按下键: {0} '.format(key))
松开键时:
# 松开键时: def on_release(key): print('松开: {0} '.format(key)) # 可要可不要 if key == Key.esc: return False
Listener:
# 监听键盘按键 with Listener(on_press=on_press, on_release=on_release) as listener: listener.join()
注意:如果需要同时进行监听和控制操作,需要使用多线程
本例只展示了pynput的键盘监听模块,pynput还有键盘控制以及鼠标监控功能,感兴趣的小伙伴可以看看官网:
https://pypi.org/project/pynput/#description
PyHook3的安装要相对复杂一些:
2.1.1 安装 swig.exe:
下载压缩包,直接解压缩后添加环境变量即可。
2.1.2 安装 Microsoft Visual C++ 14:
所需空间比较大(4G左右),安装包直接安装即可(若电脑上安装的有vscode,vstudio等软件则不需要安装),本机已安装vscode,这里不再展示。
2.1.3 安装 PyHook3:
pip install PyHook3
失败:
2.2 使用PyHook3
import PyHook3 import pythoncom
def onMouseEvent(event): # 鼠标移动过滤 if (event.MessageName != "mouse move"): print(event.MessageName) return True
def onKeyboardEvent(event): # 返回按下的键 print(event.Key) return True
# 创建一个钩子管理器 hm = PyHook3.HookManager() # 监听键盘时间 hm.KeyDown = onKeyboardEvent # 键盘钩子 hm.HookKeyboard() # 监听鼠标事件 hm.MouseAll = onMouseEvent # 鼠标钩子 hm.HookMouse() # 循环监听 pythoncom.PumpMessages()