Python 实现键盘鼠标按键模拟

 更新时间:2020年11月18日 11:30:11   作者:平凡的编程者  
这篇文章主要介绍了Python 实现键盘按键模拟的方法,帮助大家提高办公效率,感兴趣的朋友可以了解下

有时候我们需要使用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与anaconda环境变量的冲突问题

    完美处理python与anaconda环境变量的冲突问题

    这篇文章主要介绍了完美处理Python与anaconda环境变量的冲突问题,对anaconda感兴趣的同学,可以参考下
    2021-04-04
  • 基础的十进制按位运算总结与在Python中的计算示例

    基础的十进制按位运算总结与在Python中的计算示例

    按位运算是计算机学习中的基础,Python完全支持位运算符从而几乎可以直接显示出位运算的结果,这里我们稍微总结一下基础的十进制按位运算总结与在Python中的计算示例
    2016-06-06
  • PyTorch梯度下降反向传播

    PyTorch梯度下降反向传播

    这篇文章主要介绍了PyTorch反向传播,反向传播的目的是计算成本函数C对网络中任意w或b的偏导数,下文更多详细内容叙述需要的小伙伴可以参考一下
    2022-03-03
  • Python多进程multiprocessing.Pool类详解

    Python多进程multiprocessing.Pool类详解

    这篇文章主要为大家详细介绍了Python多进程multiprocessing.Pool类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-04-04
  • 基于PyQt5制作一个gif动态图片生成器

    基于PyQt5制作一个gif动态图片生成器

    这篇文章主要介绍了基于PyQt5实现的gif动态图片生成器,这个小工具制作的目的是为了将多张图片组合后生成一张动态的GIF图片。需要的可以参考一下
    2022-01-01
  • 利用Python代码实现数据可视化的5种方法详解

    利用Python代码实现数据可视化的5种方法详解

    在数据科学中,有多种工具可以进行可视化。下面这篇文章主要给大家介绍了关于利用Python代码实现数据可视化的5种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面来一起看看吧。
    2018-03-03
  • python更新列表的方法

    python更新列表的方法

    这篇文章主要介绍了python更新列表的方法,实例分析了Python列表赋值的相关技巧,需要的朋友可以参考下
    2015-07-07
  • pyCharm 实现关闭代码检查

    pyCharm 实现关闭代码检查

    这篇文章主要介绍了pyCharm 实现关闭代码检查,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • python中wx将图标显示在右下角的脚本代码

    python中wx将图标显示在右下角的脚本代码

    python中wx将图标显示在右下脚的代码,此程序摘自wxdemo,不够完善,只供参考用
    2013-03-03
  • Python 中的字符串基础与应用小结

    Python 中的字符串基础与应用小结

    在Python中,字符串可以用单引号或双引号括起来,'hello' 与 "hello" 是相同的,这篇文章主要介绍了Python 中的字符串基础与应用,需要的朋友可以参考下
    2023-09-09

最新评论