有时候我们需要使用python执行一些脚本,可能需要让程序自动按键或自动点击鼠标,下面的代码实现了对键盘的模拟按键,

需要安装pypiwin32,当然也可以直接用ctypes来实现。

pip install pypiwin32

安装pypiwin32。

键盘模拟

# coding=utf-8

import win32con

import win32api

import time

key_map = {

"0": 49, "1": 50, "2": 51, "3": 52, "4": 53, "5": 54, "6": 55, "7": 56, "8": 57, "9": 58,

"A": 65, "B": 66, "C": 67, "D": 68, "E": 69, "F": 70, "G": 71, "H": 72, "I": 73, "J": 74,

"K": 75, "L": 76, "M": 77, "N": 78, "O": 79, "P": 80, "Q": 81, "R": 82, "S": 83, "T": 84,

"U": 85, "V": 86, "W": 87, "X": 88, "Y": 89, "Z": 90

}

def key_down(key):

"""

函数功能:按下按键

参 数:key:按键值

"""

key = key.upper()

vk_code = key_map[key]

win32api.keybd_event(vk_code,win32api.MapVirtualKey(vk_code,0),0,0)

def key_up(key):

"""

函数功能:抬起按键

参 数:key:按键值

"""

key = key.upper()

vk_code = key_map[key]

win32api.keybd_event(vk_code, win32api.MapVirtualKey(vk_code, 0), win32con.KEYEVENTF_KEYUP, 0)

def key_press(key):

"""

函数功能:点击按键(按下并抬起)

参 数:key:按键值

"""

key_down(key)

time.sleep(0.02)

key_up(key)

鼠标模拟

# coding=utf-8

import win32api

import win32con

import win32gui

def move(x, y):

"""

函数功能:移动鼠标到指定位置

参 数:x:x坐标

y:y坐标

"""

win32api.SetCursorPos((x, y))

def get_cur_pos():

"""

函数功能:获取当前鼠标坐标

"""

p={"x":0,"y":0}

pos = win32gui.GetCursorPos()

p['x']=pos[0]

p['y']=pos[1]

return p

def left_click():

"""

函数功能:鼠标左键点击

"""

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN | win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)

def right_click():

"""

函数功能:鼠标右键点击

"""

win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTDOWN | win32con.MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)

def left_down():

"""

函数功能:鼠标左键按下

"""

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0)

def left_up():

"""

函数功能:鼠标左键抬起

"""

win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP, 0, 0, 0, 0)

def right_down():

"""

函数功能:鼠标右键按下

"""

win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTDOWN, 0, 0, 0, 0)

def right_up():

"""

函数功能:鼠标右键抬起

"""

win32api.mouse_event(win32con.MOUSEEVENTF_RIGHTUP, 0, 0, 0, 0)

以上就是Python 实现键盘按键模拟的详细内容,更多关于Python 键盘按键模拟的资料请关注脚本之家其它相关文章!

python编写小程序、模拟实现自动按下键盘_Python 实现键盘鼠标按键模拟相关推荐

  1. python编写小程序实例_python小程序开发实例

    商品和服务质量,是用户最关心的,运营者要保证质量,并把用户的完整信息的质量传达给用户,将影响用户的留存与转化的. 再小的店也有自己的品牌!一张小程序码可以让消费者看到你店里的详细经营情况和折扣优惠卷, ...

  2. 微信小程序让屏幕自动向下滚动

    微信小程序开发交流qq群   173683895    承接微信小程序开发.扫码加微信. 正文: wx.pageScrollTo(OBJECT) 基础库 1.4.0 开始支持,低版本需做兼容处理 将页 ...

  3. java文本框背景_用Java编写小程序(包含组合框下拉和文本框)变换背景颜色

    展开全部 代码如下:import java.awt.Color; import java.awt.Dimension; import java.awt.FlowLayout; import java. ...

  4. 用python编写一个猜年龄的小程序-知道了这个,你也能写出 Python 趣味小程序

    原标题:知道了这个,你也能写出 Python 趣味小程序 前两天在 51CTO 看见某篇推荐博文,大概是一个 豆子比较感兴趣,在知乎和 github 上搜索了相关的源代码,发现原来实现起来非常的简单, ...

  5. python计算器小程序源码_python代码编写计算器小程序

    本文实例为大家分享了python计算器小程序的具体代码,供大家参考,具体内容如下 import tkinter import tkinter.messagebox import math class ...

  6. python计算器小程序源码_python编写计算器程序-python代码编写计算器小程序

    本文实例为大家分享了python计算器小程序的具体代码,供大家参考,具体内容如下 import tkinter import tkinter.messagebox import math class ...

  7. python恶搞小程序-知道了这个,你也能写出 Python 趣味小程序

    原标题:知道了这个,你也能写出 Python 趣味小程序 前两天在 51CTO 看见某篇推荐博文,大概是一个 豆子比较感兴趣,在知乎和 github 上搜索了相关的源代码,发现原来实现起来非常的简单, ...

  8. python程序-30分钟学会用Python编写简单程序

    原标题:30分钟学会用Python编写简单程序 参与文末每日话题讨论,赠送异步新书 异步图书君 学习目标 知道有序的软件开发过程的步骤. 了解遵循输入.处理.输出(IPO)模式的程序,并能够以简单的方 ...

  9. python有趣小程序-知道了这个,你也能写出 Python 趣味小程序

    原标题:知道了这个,你也能写出 Python 趣味小程序 前两天在 51CTO 看见某篇推荐博文,大概是一个 豆子比较感兴趣,在知乎和 github 上搜索了相关的源代码,发现原来实现起来非常的简单, ...

  10. Python编写一个程序来计算 BMI 值。

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.BMI是什么? 二.使用步骤 1.简单代码 2.结果 总结 前言 Python编写一个程序来计算 BMI 值: 一 ...

最新文章

  1. 【.Net MF网络开发板研究-04】Socket编程之服务端
  2. 简单套路发高分文章--杨树内生和根际微生物组结构
  3. 重磅推荐!机器学习|深度学习|自然语言处理 书籍/课程/资料/资源大分享!
  4. c语言位运算负数的实例_一招教你学会C语言中位运算
  5. Java-InnerClass内部类
  6. vue v-for 不能自能渲染问题
  7. python学习格式化输出(一)
  8. java jxl写excel_java jxl 大量数据写入excel,比如上千万条
  9. [转]gcc下程序调用静态库编译命令:主文件必须在静态库前面!
  10. 用ISAPI Filter设置HttpOnly属性
  11. vue第一天 认识vue与vue基本使用
  12. http://cdn.ac.nbutoj.com/Problem/view.xhtml?id=1184Elaine's Queue
  13. 华硕天选笔记本电脑能上网但浏览器打不开
  14. 【JavaWeb】Servlet系列——HttpServletRequest接口详解
  15. logisim 快速加法器设计实验报告_华中科技大学数字逻辑实验
  16. PLA在计算机领域是什么意思,pla(pla是什么工作)
  17. facetime 来电提醒_Android版FaceTime应用程序? 这是一些适用于Android的替代视频通话应用程序。...
  18. Android通过GET方式访问网络页面
  19. mysql备库是什么_mysql如何避免备库出
  20. 项目规划和方案设计文档的编写

热门文章

  1. Linux系统编程思维导图:基础指令,常用工具,进程,基础IO,IPC,线程;思维导图因为图片过大所以放了链接,需要的可以下载
  2. 中班音乐计算机反思,幼儿园音乐活动反思10篇
  3. IM即时通讯实现的原理
  4. 输入表重建工具ImportREC
  5. 医院门诊管理系统之信息管理
  6. chrome os 安装手册
  7. web学习6-jdom
  8. Proxyee-down – 百度网盘全平台满速下载神器,还带有IDM的全网嗅探功能!(替代PanDownload)
  9. 正点原子Linux开发板实现WiFi开机自动连接
  10. 【APP源码】呆萌助手工具箱android源码