只用20行Python代码实现屏幕录制功能


Posted in Python onJune 02, 2021

一、模块安装

首先,我们需要用到两个python的两个模块,win32gui和PyQt5

1.pip install win32gui

2.pip install PyQt5

1、pip install win32gui
PS C:\Users\lex\Desktop> pip install win32gui
Looking in indexes: http://mirrors.aliyun.com/pypi/simple
Requirement already satisfied: win32gui in f:\develop\python36\lib\site-packages (221.6)
Requirement already satisfied: win32core in f:\develop\python36\lib\site-packages (from win32gui) (221.36)
 
2、pip install PyQt5
PS C:\Users\lex\Desktop> pip install PyQt5
Looking in indexes: http://mirrors.aliyun.com/pypi/simple
Requirement already satisfied: PyQt5 in f:\develop\python36\lib\site-packages (5.15.4)
Requirement already satisfied: PyQt5-sip<13,>=12.8 in f:\develop\python36\lib\site-packages (from PyQt5) (12.8.1)
Requirement already satisfied: PyQt5-Qt5>=5.15 in f:\develop\python36\lib\site-packages (from PyQt5) (5.15.2)
PS C:\Users\lex\Desktop>

二、设计思路

1.通过win32gui模块,调用windows系统的截屏功能,对屏幕进行录制。

2.通过timer定时器,实现每隔2秒钟,截屏一次,从而记录屏幕使用者的操作记录。

3.对截取的屏幕按照 截取时间进行命名,并存储到一个比较隐秘的文件夹路径中。

这样,我们通过,查看文件夹中的照片,就可以清晰的掌握 不明登陆者,在电脑上进行了什么样的操作。

三、代码实现

只需要简简单单10多行代码,就可以实现对windows系统电脑屏幕的录制。

代码如下:

#定义函数,每个2秒 抓取一次屏幕截屏
def timer(n):
    while True:  
        dt= time.strftime('%Y-%m-%d %H%M%S',time.localtime())
        screen = QApplication.primaryScreen()
        img = screen.grabWindow(record).toImage()
        img.save("D:\\images\\"+dt+".jpg")
        time.sleep(n)
if __name__ == "__main__":
    timer(2)

四、运行方法

1.python环境检查

命令行运行 python,查看python版本为3.6.5

PS C:\Users\lex\Desktop> python
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

2.程序运行

命令行运行 python py-screen.py 即可,效果如下图:

只用20行Python代码实现屏幕录制功能

五、完整代码

from PyQt5.QtWidgets import QApplication
import win32gui
import sys
import time
record = win32gui.FindWindow(None, 'C:\Windows\system32\cmd.exe')
app = QApplication(sys.argv)
def timer(n):
    while True:  
        dt= time.strftime('%Y-%m-%d %H%M%S',time.localtime())
        screen = QApplication.primaryScreen()
        img = screen.grabWindow(record).toImage()
        img.save("D:\\images\\"+dt+".jpg")
        time.sleep(n)
if __name__ == "__main__":
    timer(2)

六、故事结尾

最后,看了一下电脑截图

原来只是在直播而已

只用20行Python代码实现屏幕录制功能

还好还好,python小哥哥终于可以放心的睡了

到此这篇关于只用20行Python代码实现屏幕录制功能的文章就介绍到这了,更多相关Python屏幕录制内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python解析xml文件实例分享
Dec 04 Python
python使用循环实现批量创建文件夹示例
Mar 25 Python
Python2.x中str与unicode相关问题的解决方法
Mar 30 Python
Tensorflow简单验证码识别应用
May 25 Python
Python 通过URL打开图片实例详解
Jun 01 Python
Python无损音乐搜索引擎实现代码
Feb 02 Python
python版飞机大战代码分享
Nov 20 Python
解决Python运行文件出现out of memory框的问题
Dec 03 Python
Python实现获取汉字偏旁部首的方法示例【测试可用】
Dec 18 Python
Python中按值来获取指定的键
Mar 04 Python
Keras预训练的ImageNet模型实现分类操作
Jul 07 Python
利用Python实现Json序列化库的方法步骤
Sep 09 Python
TensorFlow中tf.batch_matmul()的用法
Jun 02 #Python
pytorch 运行一段时间后出现GPU OOM的问题
Jun 02 #Python
python flask开发的简单基金查询工具
python爬取网页版QQ空间,生成各类图表
Python爬虫实战之爬取携程评论
Pytorch DataLoader shuffle验证方式
python 爬取吉首大学网站成绩单
You might like
测试PHP连接MYSQL成功与否的代码
2013/08/16 PHP
PHP获取一个字符串中间一部分字符的方法
2014/08/19 PHP
Windows Server 2008 R2和2012中PHP连接MySQL过慢的解决方法
2016/07/02 PHP
PHP基于socket实现客户端和服务端通讯功能
2017/07/13 PHP
Laravel重定向,a链接跳转,控制器跳转示例
2019/10/22 PHP
jquery blockUI 遮罩不能消失与不能提交的解决方法
2011/09/17 Javascript
js控制表单操作的常用代码小结
2013/08/15 Javascript
深入解析JavaScript中的变量作用域
2013/12/06 Javascript
zeroclipboard 单个复制按钮和多个复制按钮的实现方法
2014/06/14 Javascript
基于javascript实现泡泡大冒险网页版小游戏
2016/03/23 Javascript
原生js编写基于面向对象的分页组件
2016/12/05 Javascript
jQuery EasyUI 获取tabs的实例解析
2016/12/06 Javascript
JavaScript中数组常见操作技巧
2017/09/01 Javascript
Angular2监听页面大小变化的解决方法
2017/10/09 Javascript
详解Ubuntu安装angular-cli遇到的坑
2018/09/08 Javascript
vue路由导航守卫和请求拦截以及基于node的token认证的方法
2019/04/07 Javascript
简述pm2常用命令集合及配置文件说明
2019/05/30 Javascript
详解webpack引用jquery(第三方模块)的三种办法
2019/08/21 jQuery
vue-cli3配置favicon.ico和title的流程
2020/10/27 Javascript
python检查URL是否正常访问的小技巧
2017/02/25 Python
深入浅析Python传值与传址
2018/07/10 Python
详解Python中的type和object
2018/08/15 Python
django的csrf实现过程详解
2019/07/26 Python
解析python的局部变量和全局变量
2019/08/15 Python
Keras load_model 导入错误的解决方式
2020/06/09 Python
python实现简单的五子棋游戏
2020/09/01 Python
解决python打开https出现certificate verify failed的问题
2020/09/03 Python
python自动化测试三部曲之request+django实现接口测试
2020/10/07 Python
python中的测试框架
2020/11/13 Python
python 检测nginx服务邮件报警的脚本
2020/12/31 Python
Flask处理Web表单的实现方法
2021/01/31 Python
国际知名军事风格休闲装品牌:Alpha Industries(阿尔法工业)
2017/05/24 全球购物
社区志愿者心得体会
2014/01/03 职场文书
优秀经理事迹材料
2014/02/01 职场文书
大型公益活动策划方案
2014/08/20 职场文书
公司年会开场白
2015/06/01 职场文书