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的类实例属性访问规则探讨
Jan 30 Python
python学习之面向对象【入门初级篇】
Jan 21 Python
python实现发送邮件及附件功能
Mar 02 Python
python 中的int()函数怎么用
Oct 17 Python
numpy排序与集合运算用法示例
Dec 15 Python
python使用xslt提取网页数据的方法
Feb 23 Python
详解Python3.6安装psutil模块和功能简介
May 30 Python
python实现手机销售管理系统
Mar 19 Python
Python+OpenCV+图片旋转并用原底色填充新四角的例子
Dec 12 Python
使用python库xlsxwriter库来输出各种xlsx文件的示例
Sep 01 Python
selenium判断元素是否存在的两种方法小结
Dec 07 Python
python正则表达式re.search()的基本使用教程
May 21 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访问MYSQL数据库封装类(附函数说明)
2010/12/04 PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
2016/12/29 PHP
PHP 实现页面静态化的几种方法
2017/07/23 PHP
PHP调用全国天气预报数据接口查询天气示例
2019/02/20 PHP
JS 拼图游戏 面向对象,注释完整。
2009/06/18 Javascript
IE事件对象(The Internet Explorer Event Object)
2012/06/27 Javascript
jquery无刷新验证邮箱地址实现实例
2014/02/19 Javascript
jquery制作漂亮的弹出层提示消息特效
2014/12/23 Javascript
javascript简单实现滑动菜单效果的方法
2015/07/27 Javascript
js事件处理程序跨浏览器解决方案
2016/03/27 Javascript
angularjs实现的前端分页控件示例
2017/02/10 Javascript
小程序图片剪裁加旋转的示例代码
2018/07/10 Javascript
微信小程序如何实现点击图片放大功能
2020/01/21 Javascript
es6中class类静态方法,静态属性,实例属性,实例方法的理解与应用分析
2020/02/15 Javascript
基于jquery实现彩色投票进度条代码解析
2020/08/26 jQuery
[00:20]TI9不朽观赛名额抽取
2019/08/05 DOTA
Python解决鸡兔同笼问题的方法
2014/12/20 Python
django实现用户登陆功能详解
2017/12/11 Python
pycharm: 恢复(reset) 误删文件的方法
2018/10/22 Python
Python3+PyInstall+Sciter解决报错缺少dll、html等文件问题
2019/07/15 Python
详解pandas赋值失败问题解决
2020/11/29 Python
7款设计巧妙的css3飘带状3D立体效果的导航菜单和表单窗口
2013/02/04 HTML / CSS
HTML5安全介绍之内容安全策略(CSP)简介
2012/07/10 HTML / CSS
阿玛尼美妆英国官网:Giorgio Armani Beauty英国
2019/03/28 全球购物
天游软件面试
2013/11/23 面试题
北京捷通华声语音技术有限公司Java软件工程师笔试题
2012/04/10 面试题
精彩的大学生自我评价
2013/11/17 职场文书
项目采购员岗位职责
2014/04/15 职场文书
支部鉴定材料
2014/06/02 职场文书
医院义诊活动总结
2014/07/04 职场文书
优秀教师先进事迹材料
2014/12/15 职场文书
公司开会通知
2015/04/20 职场文书
董事长新年致辞
2015/07/29 职场文书
2015重阳节敬老活动总结
2015/07/29 职场文书
关于党风廉政建设宣传教育月的活动总结!
2019/08/08 职场文书
Java无向树分析 实现最小高度树
2022/04/09 Javascript