Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例


Posted in Python onMarch 14, 2020

Python2.7: 使用Pyhook模块监听鼠标键盘事件-获取坐标。因该模块对Python3 有兼容性问题,故采用python2.7解释器。

原程序可监听所有事件,现注释掉部分功能,只输出鼠标左键触发的坐标,用于获取坐标,方便自动化取点。

# -*- coding: utf-8 -*-
#
#
import pythoncom
import pyHook
 
def onMouseEvent(event):
  # 监听鼠标事件
  # print ("MessageName:", event.MessageName)
  # print ("Message:", event.Message)
  # print ("Time:", event.Time)
  # print ("Window:", event.Window)
  # print ("WindowName:", event.WindowName)
  # print ("Position:", event.Position)
  # print ("Wheel:", event.Wheel)
  # print ("Injected:", event.Injected)
  # print ("---")
	if event.MessageName == 'mouse left down':
		print 'mouse left down'
		print ("Position:", event.Position)
 
  # 返回 True 以便将事件传给其它处理程序
  # 注意,这儿如果返回 False ,则鼠标事件将被全部拦截
  # 也就是说你的鼠标看起来会僵在那儿,似乎失去响应了
	return True
 
def onKeyboardEvent(event):
  # 监听键盘事件
  # print ("MessageName:", event.MessageName)
  # print ("Message:", event.Message)
  # print ("Time:", event.Time)
  # print ("Window:", event.Window)
  # print ("WindowName:", event.WindowName)
  # print ("Ascii:", event.Ascii, chr(event.Ascii))
  # print ("Key:", event.Key)
  # print ("KeyID:", event.KeyID)
  # print ("ScanCode:", event.ScanCode)
  # print ("Extended:", event.Extended)
  # print ("Injected:", event.Injected)
  # print ("Alt", event.Alt)
  # print ("Transition", event.Transition)
  # print ("---")
 
  # 同鼠标事件监听函数的返回值
	return True
 
def main():
  # 创建一个“钩子”管理对象
  hm = pyHook.HookManager()
 
  # 监听所有键盘事件
  #hm.KeyDown = onKeyboardEvent
  # 设置键盘“钩子”
  #hm.HookKeyboard()
 
  # 监听所有鼠标事件
  hm.MouseAll = onMouseEvent
  # 设置鼠标“钩子”
  hm.HookMouse()
 
  # 进入循环,如不手动关闭,程序将一直处于监听状态
  pythoncom.PumpMessages()
 
if __name__ == "__main__":
  main()

补充知识:python 工具mouse_find 鼠标定位

我就废话不多说了,还是直接看代码吧!

import os,time
import pyautogui as pag
try:
  while True:
      print ("Press Ctrl-C to end")
      x,y = pag.position() #返回鼠标的坐标
      posStr="Position:"+str(x).rjust(4)+','+str(y).rjust(4)
      print (posStr)#打印坐标
      time.sleep(0.2)
      os.system('cls')#清楚屏幕
except KeyboardInterrupt:
  print( 'end....')

以上这篇Python2.7:使用Pyhook模块监听鼠标键盘事件-获取坐标实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用beautifulsoup从爱奇艺网抓取视频播放
Jan 23 Python
Python中实现两个字典(dict)合并的方法
Sep 23 Python
Python get获取页面cookie代码实例
Sep 12 Python
python图的深度优先和广度优先算法实例分析
Oct 26 Python
pytorch中tensor张量数据类型的转化方式
Dec 31 Python
selenium中get_cookies()和add_cookie()的用法详解
Jan 06 Python
Python + selenium + crontab实现每日定时自动打卡功能
Mar 31 Python
PyQt5连接MySQL及QMYSQL driver not loaded错误解决
Apr 29 Python
浅谈matplotlib中FigureCanvasXAgg的用法
Jun 16 Python
Python抓包并解析json爬虫的完整实例代码
Nov 03 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
Nov 20 Python
Python获取指定网段正在使用的IP
Dec 14 Python
python matplotlib包图像配色方案分享
Mar 14 #Python
python 使用cx-freeze打包程序的实现
Mar 14 #Python
python matplotlib imshow热图坐标替换/映射实例
Mar 14 #Python
python pyqtgraph 保存图片到本地的实例
Mar 14 #Python
Python 实现将大图切片成小图,将小图组合成大图的例子
Mar 14 #Python
python numpy实现多次循环读取文件 等间隔过滤数据示例
Mar 14 #Python
python matplotlib 绘图 和 dpi对应关系详解
Mar 14 #Python
You might like
《PHP边学边教》(02.Apache+PHP环境配置――上篇)
2006/12/13 PHP
php正则校验用户名介绍
2008/07/19 PHP
浅谈Laravel中的一个后期静态绑定
2017/08/11 PHP
PHP+redis实现的悲观锁机制示例
2018/06/12 PHP
web开发人员学习jQuery的6大理由及jQuery的优势介绍
2013/01/03 Javascript
使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)
2014/06/05 Javascript
实现音乐播放器的代码(html5+css3+jquery)
2015/08/04 Javascript
理解JS绑定事件
2016/01/19 Javascript
Sort()函数的多种用法
2016/03/20 Javascript
jquery实现简单Tab切换菜单效果
2020/07/17 Javascript
jQuery实现table中的tr上下移动并保持序号不变的实例代码
2016/07/11 Javascript
JQuery之proxy实现绑定代理方法
2016/08/01 Javascript
JavaScript简单获取系统当前时间完整示例
2016/08/02 Javascript
JS实现一次性弹窗的方法【刷新后不弹出】
2016/12/26 Javascript
基于node.js的fs核心模块读写文件操作(实例讲解)
2017/09/10 Javascript
js实现各浏览器全屏代码实例
2018/07/03 Javascript
基于Vue实现关键词实时搜索高亮显示关键词
2018/07/21 Javascript
echarts实现地图定时切换散点与多图表级联联动详解
2018/08/07 Javascript
ant-design-vue 快速避坑指南(推荐)
2020/01/21 Javascript
解决Vue router-link绑定事件不生效的问题
2020/07/22 Javascript
python实现将元祖转换成数组的方法
2015/05/04 Python
利用Python脚本生成sitemap.xml的实现方法
2017/01/31 Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
2019/08/23 Python
基于Python实现扑克牌面试题
2019/12/11 Python
Python装饰器的应用场景代码总结
2020/04/10 Python
Jupyter Notebook 文件默认目录的查看以及更改步骤
2020/04/14 Python
浅谈Python中threading join和setDaemon用法及区别说明
2020/05/02 Python
css3 中translate和transition的使用方法
2020/03/26 HTML / CSS
HMV日本官网:全球知名的音乐、DVD和电脑游戏零售巨头
2016/08/13 全球购物
bonprix匈牙利:女士、男士和儿童服装
2019/07/19 全球购物
小学生检讨书大全
2014/02/06 职场文书
青春演讲稿范文
2014/05/08 职场文书
标准离婚协议书范文下载
2014/11/30 职场文书
汤姆叔叔的小屋读书笔记
2015/06/30 职场文书
创业计划书之宠物店
2019/09/19 职场文书
git中cherry-pick命令的使用教程
2022/06/25 Servers