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库抓取58手机维修信息
Nov 21 Python
Python中使用logging模块打印log日志详解
Apr 05 Python
pygame学习笔记(3):运动速率、时间、事件、文字
Apr 15 Python
对于Python装饰器使用的一些建议
Jun 03 Python
python遍历 truple list dictionary的几种方法总结
Sep 11 Python
Python使用Tkinter实现机器人走迷宫
Jan 22 Python
Python加载带有注释的Json文件实例
May 23 Python
python pandas中对Series数据进行轴向连接的实例
Jun 08 Python
Python2与Python3的区别实例总结
Apr 17 Python
pyqt 实现在Widgets中显示图片和文字的方法
Jun 13 Python
python 实现手机自动拨打电话的方法(通话压力测试)
Aug 08 Python
Django错误:TypeError at / 'bool' object is not callable解决
Aug 16 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 获取文件路径(灵活应用__FILE__)
2013/02/15 PHP
解决cPanel无法安装php5.2.17
2014/06/22 PHP
php批量删除操作(数据访问)
2017/05/23 PHP
ThinkPHP框架实现定时执行任务的两种方法分析
2018/09/04 PHP
jQuery 常见操作实现方式和常用函数方法总结
2011/05/06 Javascript
jquery异步跨域访问代码
2013/06/28 Javascript
常用js字符串判断方法整理
2013/10/18 Javascript
纯js分页代码(简洁实用)
2013/11/05 Javascript
js判断checkbox是否选中个数的方法(超简单)
2016/08/19 Javascript
Ajax与服务器(JSON)通信实例代码
2016/11/05 Javascript
JQuery学习总结【二】
2016/12/01 Javascript
微信小程序 tabs选项卡效果的实现
2017/01/05 Javascript
jQuery的三种bind/One/Live/On事件绑定使用方法
2017/02/23 Javascript
vue-axios使用详解
2017/05/10 Javascript
jquery+css实现下拉列表功能
2017/09/03 jQuery
vue组件name的作用小结
2018/05/23 Javascript
微信小程序第三方框架对比 之 wepy / mpvue / taro
2019/04/10 Javascript
解决vue中的无限循环问题
2020/07/27 Javascript
[02:16]深扒TI7聊天轮盘语音出处2
2017/05/11 DOTA
Django中几种重定向方法
2015/04/28 Python
Python中文件的读取和写入操作
2018/04/27 Python
深入浅析python 中的匿名函数
2018/05/21 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
利用CSS3伪元素实现逐渐发光的方格边框
2017/05/07 HTML / CSS
Eclipse面试题
2014/03/22 面试题
Java程序员常见面试题
2015/07/16 面试题
军训教官感言
2014/03/02 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
买卖合同协议书范本
2014/10/18 职场文书
2014年体检中心工作总结
2014/12/23 职场文书
幼师辞职信范文
2015/02/27 职场文书
自主招生推荐信格式模板
2015/03/24 职场文书
叶问观后感
2015/06/15 职场文书
2019个人工作自我评价范文(3篇)
2019/09/19 职场文书
Django如何创作一个简单的最小程序
2021/05/12 Python
如何通过一篇文章了解Python中的生成器
2022/04/02 Python