python键盘键值表_Python怎么记录键盘鼠标敲击次数|Python统计鼠标点击次数 - PS下...
看手工耿突发奇想,自己是否也能搞个有意义的脑残程序,于是想到自己能否也统计一下自己敲击键盘的内容?其实一直都有这个想法,今天终于实现这个小心思。网上搜了下已经有别人做过了。于是乎,借鉴了一些别人的程序,然后进行改造。最终大功告成。
task is cheap,
全部代码如下,可以直接复制粘贴跑起来:
# coding:utf-8
import datetime
import pyHook
import pythoncom
from time import *
result = ''
# 一个字典存取所有键值和按键的次数。
keyDict = {}
strDate = datetime.datetime.now().strftime('%y-%m-%d')
print(strDate)
def onMouseEvent(event):
# 监听鼠标
# 需要注意的是返回True,以便将事件传给其他的处理程序,如果返回False的话,鼠标事件在这里就会被拦截,即鼠标会僵在此处失去响应
return True
def onKeyboardEvent(event):
# 监听键盘事件
# 同鼠标事件监听函数的返回值
# 写一个保存到本地文件的方法,而且应该以写二进制的方式来写入,设置result为全局的,避免文件被覆盖
global result
# 以每天的日期为文件名称。
file = open(r'D:/{}.txt'.format(strDate), 'wb')
key = str(event.Key)
result = result + "Time : " + str(asctime())+"|:"+"WindowName:"+str( event.WindowName)+"|"+"Key:"+key+"|"+"MessageName:"+str( event.MessageName)
if key not in keyDict:
keyDict[key] = 1
else:
keyDict[key] = keyDict[key]+1
file.writelines(result)
if event.Key == "Escape":
file.close()
print('统计结果是 {}'.format(keyDict))
exit("统计结束!")
return True
def main():
# 设置为全局变量,以便存取按键及次数
global keyDict
# 创建一个:钩子“管理对象
hm = pyHook.HookManager()
# 监听所有的键盘事件
hm.KeyDown = onKeyboardEvent
#设置键盘”钩子“
hm.HookKeyboard()
# 监听鼠标事件
hm.mouseAll = onMouseEvent
# 设置鼠标钩子
hm.HookMouse()
# 进入循环侦听,需要手动进行关闭,否则程序将一直处于监听的状态。可以直接设置而空而使用默认值
pythoncom.PumpMessages()
if __name__ == "__main__":
main()
python 文件名.py
按Esc键会自动退出程序。
结果如下:
计结果是 {'A': 1, 'D': 1, 'F': 1, 'S': 9, 'Lshift': 1, 'Escape': 1}
统计结束!
可以看到S键敲击了9次,A键敲击了1次。 Esc键按了1次。
Over
python键盘键值表_Python怎么记录键盘鼠标敲击次数|Python统计鼠标点击次数 - PS下...相关推荐
- python监听键盘keyboard_python利用 keyboard 库记录键盘事件
今天也不知道是想了什么,突然就想要试试看我有效击键时的手速到底有多快.为此,需要记录下来击键的记录.于是找到了 python 的 keyboard 库. 安装非常简单,只需执行 pip install ...
- 键盘键和键盘键控制值一览表(键盘按键对应代码表)
http://blog.csdn.net/sunxiaosunxiao/article/details/7067412 字母 A 到 Z 和标准数字 0 到 9 下表列出了标准键盘上字母 A 到 Z ...
- 键盘键和键盘键控制值一览表(键盘代码对应表)
http://blog.csdn.net/sunxiaosunxiao/article/details/7067412 字母 A 到 Z 和标准数字 0 到 9 下表列出了标准键盘上字母 A 到 Z ...
- python方向键键值_python字典键值对的添加和遍历方法
添加键值对 首先定义一个空字典 >>> dic={} 直接对字典中不存在的key进行赋值来添加 >>> dic['name']='zhangsan' >> ...
- python 聚类算法包_Python聚类算法之DBSACN实例分析 python怎么用sklearn包进行聚类
python 怎么可视化聚类的结果 science 发表的聚类算法的python代码 测试数据长什...说明你的样本数据中有nan值,通常是因为原始数据中包含空字符串或None值引起的. 解决办法是把 ...
- python变量命名规则_Python教程第9篇:牢记Python变量命名5大规则
上一节课我们通过几行代码来理解Python变量,不知道你都动手操作了吗?Python变量名不是随便乱起的哈,需要遵循以下规则:1. 只能字母.下划线开头,不能数字开头.变量用小写字母开头是 Pyth ...
- python大文件排序_Python如何实现大文件排序?Python大文件排序的实现方法
Python如何实现大文件排序?Python大文件排序的实现方法 本文实例讲述了Python实现大文件排序的方法.分享给大家供大家参考.具体实现方法如下: import gzip import os ...
- python怎么算阶乘_python专家写阶乘 ()用python计算阶乘
请编写一个程序实现分享n的阶乘(即n.),并打印输出结果.要分享包括两个函def little_than_50(x): if x 语言很多时候是假的,一起经历过的事情才是真的. 这个用python写的 ...
- python的dropna函数_Python学习教程:从Excel到Python最常用的32个Pandas函数(一)
原标题:Python学习教程:从Excel到Python最常用的32个Pandas函数(一) 本次的Python学习教程涉及pandas最常用的36个函数,通过这些函数介绍如何完成数据生成和导入.数据 ...
最新文章
- ATS中的RAM缓存简介
- RMSD:通过旋转计算两个分子间的最小rmsd
- 解决ThinkPHP关闭调试模式时报错的问题汇总
- (~解题报告~)L1-017 到底有多二 (15分)(16行代码AC)
- Marketing Cloud里取得系统contact数目的API
- 28. 正确理解由reverse_iterator的base()成员函数所产生的iterator的用法
- Python教学视频(一)Python基础环境的安装
- 硬盘如何分区及分区注意事项
- js 移动端的表情包
- 开机出现grub rescue,修复办法
- 我的世界服务器总是显示错误,win 10 进mc服务器总是错误 怎么办
- 通过python调用海康威视工业摄像头并进行图像存储,同时使用opencv实时图像显示(数据流问题已解决)
- 【解释比较形象好理解】你稀里糊涂学的算法复杂度,原来这么简单!
- php不显示notice,解决PHP显示Warning和Notice等问题
- 计算机网络:P4.3-网络层(下)
- Switch游戏机Type-C底座方案
- vim 安装插件及常用插件
- SQL语句的强大综合集锦
- 百度 2022 提前批-数据挖掘算法工程师面经
- 【Visual c++】+【EasyX】游戏组件1 移动的小人