只用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将人民币转换大写的脚本代码
Feb 10 Python
Python书单 不将就
Jul 11 Python
Django 后台获取文件列表 InMemoryUploadedFile的例子
Aug 07 Python
python Kmeans算法原理深入解析
Aug 23 Python
Django Form and ModelForm的区别与使用
Dec 06 Python
关于pytorch处理类别不平衡的问题
Dec 31 Python
Python中logging日志库实例详解
Feb 19 Python
什么是Python变量作用域
Jun 03 Python
基于python代码批量处理图片resize
Jun 04 Python
python实现凯撒密码、凯撒加解密算法
Jun 11 Python
Python Flask搭建yolov3目标检测系统详解流程
Nov 07 Python
python利用while求100内的整数和方式
Nov 07 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
mysql 中InnoDB和MyISAM的区别分析小结
2008/04/15 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
2013/08/15 PHP
解密ThinkPHP3.1.2版本之独立分组功能应用
2014/06/19 PHP
PHP设计模式之注册树模式分析
2018/01/26 PHP
网页右键ie不支持event.preventDefault和event.returnValue (需要加window)
2013/02/22 Javascript
JavaScript拖拽、碰撞、重力及弹性运动实例分析
2016/01/08 Javascript
jquery实现的回旋滚动效果完整实例【附demo源码下载】
2016/09/20 Javascript
bootstrap读书笔记之CSS组件(上)
2016/10/17 Javascript
JavaScript 动态三角函数实例详解
2017/01/08 Javascript
Vue实现点击后文字变色切换方法
2018/02/11 Javascript
vue组件横向树实现代码
2018/08/02 Javascript
vue.js封装switch开关组件的操作
2020/10/26 Javascript
微信小程序input抖动问题的修复方法
2021/03/03 Javascript
python中from module import * 的一个坑
2014/07/20 Python
Python实现远程调用MetaSploit的方法
2014/08/22 Python
python基于phantomjs实现导入图片
2016/05/13 Python
详谈Python3 操作系统与路径 模块(os / os.path / pathlib)
2018/04/26 Python
Python图像处理之简单画板实现方法示例
2018/08/30 Python
Python设计模式之命令模式原理与用法实例分析
2019/01/11 Python
django的settings中设置中文支持的实现
2019/04/28 Python
Pycharm+django2.2+python3.6+MySQL实现简单的考试报名系统
2019/09/05 Python
解决Python使用列表副本的问题
2019/12/19 Python
手把手教你进行Python虚拟环境配置教程
2020/02/03 Python
CSS3感应鼠标的背景闪烁和图片缩放动画效果
2014/05/14 HTML / CSS
Vans荷兰官方网站:美国南加州的原创极限运动潮牌
2018/01/23 全球购物
会计专业毕业生自荐信范文
2013/12/20 职场文书
文秘档案管理岗位职责
2014/03/06 职场文书
《长城和运河》教学反思
2014/04/14 职场文书
社区志愿者培训方案
2014/06/10 职场文书
体育专业求职信
2014/07/16 职场文书
处级领导班子全部召开专题民主生活会情况汇报
2014/09/27 职场文书
小学端午节活动总结
2015/02/11 职场文书
2015年转正工作总结范文
2015/04/02 职场文书
社区志愿者服务心得体会
2016/01/22 职场文书
Python中Schedule模块使用详解 周期任务神器
2022/04/19 Python
Python中的协程(Coroutine)操作模块(greenlet、gevent)
2022/05/30 Python