模拟键盘操作执行自动化任务,我们常用的有 pyautowin 等自动化操作模块。但是这些模块有一个很大的缺点,编译的时候非常依赖 windows 的C语言底层模块。

今天介绍的这个模块叫做 keyboard 它有一个最大的优点:纯Python原生开发,编译时完全不需要依赖C语言模块。一行命令就能完成安装,非常方便。

1.准备

首先需要你的电脑安装好了Python环境,并且安装好了Python开发工具。

请选择以下任一种方式输入命令安装依赖

1. Windows 环境 打开 Cmd (开始-运行-CMD)。
2. MacOS 环境 打开 Terminal (command+空格输入Terminal)。
3. 如果你用的是 VSCode编辑器 或 Pycharm,可以直接使用界面下方的Terminal.

pip install keyboard

2.基本使用

按下并释放:模拟键盘按下某些键或组合键后释放,比如shift + S, 并增加空格:

import keyboardkeyboard.press_and_release('shift+s, space')

输入文字:

import keyboardkeyboard.write('Python 实用宝典')

等待触发按键并响应:

# 公众号:Python实用宝典
import keyboardkeyboard.add_hotkey('ctrl+shift+a', print, args=('宝典哥触发了热键'))
keyboard.wait()

这样程序就会监控 "ctrl+shift+a" 组合键的触发情况,一旦组合键触发,就会执行第二个参数的函数,并将第三个参数传入第二个函数的参数中。

等待触发某个按键:

# 公众号:Python实用宝典
import keyboardkeyboard.add_hotkey('ctrl+shift+a', print, args=('宝典哥触发了热键'))
keyboard.wait('esc')

这样,按下 ESC 就会终止等待,继续往下运行程序。

3.高级功能

记录功能:

# 公众号:Python实用宝典
import keyboardrecorded = keyboard.record(until='esc')
print(recorded)

可以看到,除非你按下esc,它会记录所有执行过的键盘操作。

重放操作:

# 公众号:Python实用宝典
import keyboardrecorded = keyboard.record(until='esc')
print(recorded)
keyboard.play(recorded, speed_factor=3)

play方法能完全模拟你刚记录下的所有键盘操作。

替换操作:

# 公众号:Python实用宝典
import keyboardkeyboard.add_abbreviation('@@', 'Python 实用宝典')
keyboard.wait('esc')

输入@@并按下空格,它会将你刚输入的@@替换为你的内容.

怎么样,这个简单实用的Keyboard模块,你学会使用了吗?


好书推荐

互联网的普及,大数据、云计算、5G、人工智能、区块链等技术的成熟,促成了数字经济的大繁荣。以计算能力为基础,万物感知、万物互联、万物智能的数字经济新时代正在到来。数据量呈爆发式增长,对算力的需求达到空前高度,算力成为数字经济的新引擎。

本书共有8章,对算力及算力经济进行系统阐述,涉及新基建、新能源体系、数据资源、算力技术体系、基于新能源电力的算力中心、算力产业等;并从多个产业应用的角度,剖解算力对数字经济的驱动逻辑,帮助企业与个人找准发力的方向。

推荐阅读:
入门: 最全的零基础学Python的问题  | 零基础学了8个月的Python  | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 |   从万众期待到口碑扑街!唐探3令人失望  | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏  | 九宫格  | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!|  再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|

年度爆款文案

  • 1).卧槽!Pdf转Word用Python轻松搞定!

  • 2).学Python真香!我用100行代码做了个网站,帮人PS旅行图片,赚个鸡腿吃

  • 3).首播过亿,火爆全网,我分析了《乘风破浪的姐姐》,发现了这些秘密

  • 4).80行代码!用Python做一个哆来A梦分身

  • 5).你必须掌握的20个python代码,短小精悍,用处无穷

  • 6).30个Python奇淫技巧集

  • 7).我总结的80页《菜鸟学Python精选干货.pdf》,都是干货

  • 8).再见Python!我要学Go了!2500字深度分析!

  • 9).发现一个舔狗福利!这个Python爬虫神器太爽了,自动下载妹子图片

点阅读原文,看B站我的视频!

上班还想摸鱼!这个牛逼的Python模块,轻松记录键盘操作!相关推荐

  1. AI化身监工,上班还能摸鱼吗?

    来源 | 人民数字FINTECH 责编 | 晋兆雨 头图 | CSDN 下载自视觉中国 俗话说"上班摸鱼一时爽,一直摸鱼一直爽." 上班族这群"时间管理大师们" ...

  2. 这个牛逼的Python模块,能让你轻松模拟并记录键盘操作(附零基础学习资料)

    前言 模拟键盘操作执行自动化任务,我们常用的有 pyautowin 等自动化操作模块.但是这些模块有一个很大的缺点,编译的时候非常依赖 windows 的C语言底层模块.(文末送福利) 今天介绍的这个 ...

  3. 牛逼!Python错误、异常和模块(长文系列第4篇)

    系列第四篇主要讲两方面,错误和异常以及模块.在编程时遇见错误信息在所难免,Python中会也有很多种错误信息,常见的两种就是语法错误和逻辑错误,逻辑错误的种类有很多,占据了异常中大部分位置,下面就开始 ...

  4. 牛逼!Python的判断、循环和各种表达式(长文系列第②篇)

    流程控制是python语法很重要的一个分支,主要包括我们经常用到的判断语句.循环语句以及各种表达式,这也是上一篇文章没有介绍表达式的原因,在这篇文章中会更加系统全面的讲解这三方面的基础知识. 判断语句 ...

  5. 牛逼!Python的类和对象(长文系列第⑤篇)

    系列最后一篇来说说Python中的类与对象,Python这门语言是无处不对象,如果你曾浅要了解过Python,你应该听过Python是一种面向对象编程的语言,所以你经常可能会看到面向"对象& ...

  6. python爬取公众号阅读量_分享一个牛逼的Python项目:公众号文章爬虫

    我订阅了近 100 个公众号,有时候想再找之前读过的文章,发现搜索起来特别困难,如果忘了收藏,估计得找半小时,更让人无语的是,文章已经发布者删除,或者文章因违规被删除.那么有没有这样的爬虫,可以将公众 ...

  7. Google推出了牛逼的Python在线编辑器,以后协同项目代码就省心了

    Google推出了牛逼的Python在线编辑器,以后协同项目代码就省心了,环境配置对于大多数人来说都是拦路虎,我们小白往往不知道: 怎么正确的安装 不知道选择什么 怎么安装常用的第三方库 ... Go ...

  8. python 公众号文章发布_分享一个牛逼的Python项目:公众号文章爬虫

    我订阅了近 100 个公众号,有时候想再找之前读过的文章,发现搜索起来特别困难,如果忘了收藏,估计得找半小时,更让人无语的是,文章已经发布者删除,或者文章因违规被删除.那么有没有这样的爬虫,可以将公众 ...

  9. 在华为做了5年测试,8月被无情辞退,想给还在摸鱼的兄弟提个醒...

    先简单交代一下背景吧,某不知名 985 的本硕,17 年毕业加入华为,以"人员优化"的名义无情被裁员,之后跳槽到了有赞,一直从事软件测试的工作.之前没有实习经历,算是5年的工作经验 ...

最新文章

  1. 【物联网智能网关-14】Html5:Canvas+WebSocket实现远程实时通信(下)
  2. 把C++类成员方法直接作为线程回调函数
  3. 从0学习css开发之 font-size的基本用法
  4. 【hdu2825】ac自动机 + 状压dp
  5. 一流企业都在做数据治理,还用百万年薪招人,想做的无非这10点
  6. ARMv8体系结构基础05:比较和跳转指令
  7. iOS中UINavigationController控制器使用详解
  8. ajax 自动提示信息,自动提示使用AJAX
  9. codevs——1517 求一次函数解析式
  10. DW怎么把模板拽进html文件中,在Dreamweaver中如何使用模板
  11. CDN缓存那些事 转载陈小龙哈2016-09-2
  12. Cutting a Rod
  13. 在mysql中如何建立性别约束_在Access2010数据库中,要在表中建立“性别”字段,并按与要求用逻辑值表示,其数据类型应当是()_学小易找答案...
  14. 微信里关闭窗口 js
  15. 十大酷炫屌的图像悬停特效
  16. tcp三次握手,一句话概括
  17. 以色列通过空袭回应哈马斯的黑客攻击
  18. 天正lisp文件夹_天正启动时加载那些lisp_怎么在启动CAD时自动加载Lisp的工具和插件...
  19. java 解压缩文件
  20. 简单易懂百万富翁问题(漫画)

热门文章

  1. spark源码(四)executor在worker上的创建过程,executor本质是什么,是线程池吗?
  2. 下图显示了用计算机模拟随机,2017-2018徐州数学第二学期期末试卷.docx
  3. html multiply属性,CSS中的合成与混合模式
  4. canvas 时钟动画
  5. JSON数组字符串取值方法
  6. 如何解锁oracle用户界面操作,oracle 解锁用户以及重新设置用户密码
  7. 2D游戏案例:《诗梦游记》
  8. excel制作可模糊匹配的下拉框
  9. vue3+ts+ant-design-vue动态主题颜色
  10. Android平台日志收集系统