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 thread 并发且顺序运行示例
Apr 09 Python
Python EOL while scanning string literal问题解决方法
Sep 18 Python
Python编程使用tkinter模块实现计算器软件完整代码示例
Nov 29 Python
解决matplotlib库show()方法不显示图片的问题
May 24 Python
python3监控CentOS磁盘空间脚本
Jun 21 Python
win10系统下Anaconda3安装配置方法图文教程
Sep 19 Python
python_opencv用线段画封闭矩形的实例
Dec 05 Python
树莓派与PC端在局域网内运用python实现即时通讯
Jun 22 Python
python接口自动化如何封装获取常量的类
Dec 24 Python
Python PyPDF2模块安装使用解析
Jan 19 Python
Python基础类继承重写实现原理解析
Apr 03 Python
Python的PIL库中getpixel方法的使用
Apr 09 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 filter_var() 函数 Filter 函数
2012/04/25 PHP
php实现二进制和文本相互转换的方法
2015/04/18 PHP
php.ini中的request_order推荐设置
2015/05/10 PHP
php实现统计目录文件大小的函数
2015/12/25 PHP
PHP中include/require/include_once/require_once使用心得
2016/08/28 PHP
PHP命名空间namespace用法实例分析
2016/09/27 PHP
微信开发之获取JSAPI TICKET
2017/07/07 PHP
PHP常见过waf webshell以及最简单的检测方法
2019/05/21 PHP
Javascript 学习书 推荐
2009/06/13 Javascript
JS弹出窗口代码大全(详细整理)
2012/12/21 Javascript
jQuery的$.proxy()应用示例介绍
2014/04/03 Javascript
jquery插件hiAlert实现网页对话框美化
2015/05/03 Javascript
jQuery实现表单步骤流程导航代码分享
2015/08/28 Javascript
jQuery Easyui加载表格出错时在表格中间显示自定义的提示内容
2016/12/08 Javascript
javascript 的变量、作用域和内存问题
2017/04/19 Javascript
vue 之 .sync 修饰符示例详解
2018/04/21 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
2018/06/27 Javascript
React Component存在的几种形式详解
2018/11/06 Javascript
javascript定时器的简单应用示例【控制方块移动】
2019/06/17 Javascript
JavaScript实现4位随机验证码的生成
2021/01/28 Javascript
Python中super关键字用法实例分析
2015/05/28 Python
发布你的Python模块详解
2016/09/15 Python
python 自动化将markdown文件转成html文件的方法
2016/09/23 Python
scrapy spider的几种爬取方式实例代码
2018/01/25 Python
Django中使用极验Geetest滑动验证码过程解析
2019/07/31 Python
Python实现AI换脸功能
2020/04/10 Python
HTML5 canvas基本绘图之绘制阴影效果
2016/06/27 HTML / CSS
以特惠价提供在线奢侈品购物:FRMODA.com
2018/01/25 全球购物
英国玛莎百货新西兰:Marks & Spencer New Zealand
2019/07/21 全球购物
CHRONEXT英国:您的首选奢华腕表目的地
2020/03/30 全球购物
写自荐信的七个技巧
2013/10/15 职场文书
毕业设计说明书
2014/05/07 职场文书
婚前财产协议书范本
2014/10/19 职场文书
导游词之介休绵山
2019/12/31 职场文书
HTML CSS 一个标签实现带动画的抖音LOGO
2022/04/26 HTML / CSS
CSS实现鼠标悬浮动画特效
2023/05/07 HTML / CSS