python实现键盘控制鼠标移动
玩QQ桌球游戏时,有时候用鼠标控制鼠标指针的微小移动比较费劲儿,所以想写个程序,可以用键盘的上下左右键来控制鼠标的移动,每次只移动一个像素。
本脚本依赖pywin32、pyHook和pymouse这两个库,请自行安装。代码中的pythoncom是pywin32库的一部分,运行脚本后,即可通过键盘的上下左右键控制鼠标移动了。
# -*- coding:utf-8 -*- # 左37 上38 右39 下40 import pythoncom import pyHook from pymouse import PyMouse def onKeyboardEvent(event): # 获取所按下按键的id keyID = event.KeyID # 获取当前鼠标的坐标 mouse = PyMouse() x, y = mouse.position() x = int(x) y = int(y) # 设定x和y的偏移量 deltaX = 0 deltaY = 0 if keyID == 37: deltaX = -1 elif keyID == 38: deltaY = -1 elif keyID == 39: deltaX = 1 elif keyID == 40: deltaY = 1 else: return True # 移动鼠标 mouse.move(x + deltaX, y + deltaY) return True def main(): # 启动键盘事件的监听 hm = pyHook.HookManager() hm.KeyDown = onKeyboardEvent hm.HookKeyboard() pythoncom.PumpMessages() if __name__ == '__main__': main()
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
相关推荐
-
Python中使用PyHook监听鼠标和键盘事件实例
PyHook是一个基于Python的"钩子"库,主要用于监听当前电脑上鼠标和键盘的事件.这个库依赖于另一个Python库PyWin32,如同名字所显示的,PyWin32只能运行在Windows平台,所以PyHook也只能运行在Windows平台. 关于PyHook的使用,在它的官方主页上就有一个简单的教程,大体上来说,可以这样使用 # -*- coding: utf-8 -*- # 3import pythoncom 4import pyHook 5def onMouseEvent(e
-
python实现微信远程控制电脑
首先,我们要先看看微信远程控制电脑的原理是什么呢? 我们可以利用Python的标准库控制本机电脑,然后要实现远程的话,我们可以把电子邮件作为远程控制的渠道,我们用Python自动登录邮箱检测邮件,当我们发送关机指令给这个邮箱的时候,若Python检测到相关的指令,那么Python直接发送本机的相关命令. 下面来分析一下该项目: 1.需求分析 1.范围:用Python开发一个远程操控电脑的项目. 2.总体要求: 2.1 总体功能要求:能够通过该软件远程控制该软件所在的电脑的重启或关机操作. 2.2
-
python之模拟鼠标键盘动作具体实现
上个月就打算开发个还算好玩的项目,但是一直没时间.这篇是此项目用到的一部分, 处理好此部分基本还差通信等方面的了.首先模拟鼠标键盘按下释放的动作,本人利用X11 这个库,所以要了解X11编程;其次,本身用c或者c++就可以实现了,但是由于本人是py 粉,所以总想把代码搬进python,所以本人就要实现python模块,本篇用的ctypes,以后会 把python的c扩展模块附上来的. 1.X11编程 首先简单的介绍一下X11吧,网上有介绍,本人就不重复了.我们知道X是以server与client
-
python实现Windows电脑定时关机
定时关机,功能:windows下,用户按照一定格式输入关机时间,系统到指定时间自动关闭 思路:从用户输入获取指定时间 分别以时分秒减去当前时间 最终计算得到当前时间距离指定 时间还有多少秒 作为关机命令的时间参数. 需要用到的模块: os 用于执行设定的系统命令 time 用于获取系统时间 需要用到cmd命令: shutdown -s -t xxx 其中xxx为距离自动关机所用秒数,即时间参数 shutdown -a 取消关机计划. 代码: import os import time input
-
python实现远程控制电脑
python远程控制电脑的具体代码,供大家参考,具体内容如下 python拥有大量的第三方库,且语法简单.今天老杨就用python实现远程控制电脑 所谓,谋定而后动,在实现任何一个需求之前,我们需要先分析,捋清楚一个思路,远程控制电脑,无非就是接收远程的命令和根据命令去执行对应的操作.那这里,我们借助微信来接收命令,利用我们的一个itchat库实现远程控制电脑 按上所说,我们要完成需求,无非是把任务细分,首先,接收到消息指令,再根据对应的指令执行相对应的操作,其中我们需要考虑一个问题
-
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
本文实例讲述了Python使用pyautogui模块实现自动化鼠标和键盘操作.分享给大家供大家参考,具体如下: 一.pyautogui模块简要说明 ## 使用 pyautogui 模块相关函数,可以模拟鼠标及键盘操作, 完整说明文档见: http://pyautogui.readthedocs.org/ # pip install pyautogui # 要注意的是,模拟移动鼠标与击键可能太快,导致其他程序跟不上,并且程序可能失去控制, # 需要掌握如何从问题中恢复,至少要能中止它. # 防止或
-
python实现控制电脑鼠标和键盘,登录QQ的方法示例
本文实例讲述了python实现控制电脑鼠标和键盘,登录QQ的方法.分享给大家供大家参考,具体如下: import os from pynput.mouse import Button,Controller from pynput.keyboard import Key from pynput.keyboard import Controller as W from time import sleep mouse = Controller() keyboard = W() #点击右下角刷新桌面图标
-
Python3.4实现远程控制电脑开关机
本文实例为大家分享了Python实现远程操控电脑的具体代码,供大家参考,具体内容如下 import poplib import sys import smtplib from email.mime.text import MIMEText import os from email.header import decode_header import email import time def check_email(): try: p = poplib.POP3('pop.163.com') p
-
利用Python实现Windows下的鼠标键盘模拟的实例代码
本文介绍了利用Python实现Windows下的鼠标键盘模拟的实例代码,分享给大家 本来用按键精灵是可以实现我的需求,而且更简单,但既然学python ,就看一下呗. 依赖: PyUserInput pip install PyUserInput PyUserInput 依赖 pyhook,所以还得安装 pyhook.按需下载,下载地址. 我是 win10 64 位 python 2.7,用的是第二个,下载之后用解压软件打开,把 pyHook放到C:\Python27\Lib\site-pack
-
python得到电脑的开机时间方法
如下所示: #先下载psutil库:pip install psutil import psutil import os,datetime def main(): print "电脑的开机时间", #调用psutil.boot_time()函数返回开机的时间戳 dt = datetime.datetime.fromtimestamp(psutil.boot_time()) #返回一个datetime对象 print dt.strftime("%Y-%m-%d,%H:%M:%S
-
利用webqq协议使用python登录qq发消息源码参考
开源的,地址在https://github.com/atupal/webqq 等有时间了写一个完整的cli qq客户端. 使用方法:python login_qq.py即可 复制代码 代码如下: import urllib2 import httplib2 import re import random from encryption import QQmd5 import cookielib import requests import getpass import time import j
-
windows下python模拟鼠标点击和键盘输示例
需要先装pywin32,windows下调用winapi的接口 复制代码 代码如下: ## _*_ coding:UTF-8 _*___author__ = 'shanl' import win32apiimport win32conimport win32guifrom ctypes import *import time VK_CODE = { 'backspace':0x08, 'tab':0x09, 'clear':0x0C, 'enter':0x0D, '
随机推荐
- JS中产生标识符方式的演变
- Android中手机号、车牌号正则表达式大全
- Oracle查询语句中rownum与rowid的不同之处分析
- .net基础收集汇总
- JavaScript 异步调用框架 (Part 6 - 实例 & 模式)
- C#控制台程序使用Log4net日志组件详解
- .net core版 文件上传/ 支持批量上传拖拽及预览功能(bootstrap fileinput上传文件)
- 在Python中使用mechanize模块模拟浏览器功能
- phpexcel导出excel的颜色和网页中的颜色显示不一致
- js 表格排序(编辑+拖拽+缩放)
- 服务器安装Macfee(麦咖啡)杀毒软件后可能出现的问题
- java实现sftp客户端上传文件以及文件夹的功能代码
- Django中几种重定向方法
- 基于SQL中的数据查询语句汇总
- Kotlin 基础语法详细介绍
- jquery实现带二级菜单的导航示例
- JavaScript聚焦于第一个字段的代码
- 使用java基于pushlet和bootstrap实现的简单聊天室
- java Date装成英文String后,无法再转回Date的解决方案
- java volatile关键字使用方法及注意事项