只用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中类型关系和继承关系实例详解
May 25 Python
python基于隐马尔可夫模型实现中文拼音输入
Apr 01 Python
Python3连接MySQL(pymysql)模拟转账实现代码
May 24 Python
详解python3中socket套接字的编码问题解决
Jul 01 Python
基于python的字节编译详解
Sep 20 Python
Python数据结构与算法之使用队列解决小猫钓鱼问题
Dec 14 Python
python3 面向对象__类的内置属性与方法的实例代码
Nov 09 Python
python读取文件名并改名字的实例
Jan 07 Python
python绘制多个子图的实例
Jul 07 Python
python实现一个函数版的名片管理系统过程解析
Aug 27 Python
python处理RSTP视频流过程解析
Jan 11 Python
使用Python将xmind脑图转成excel用例的实现代码(一)
Oct 12 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
关于session在PHP5的配置文件中的详细设置参数说明
2011/04/20 PHP
PHP的几个常用数字判断函数代码
2012/04/24 PHP
PHP浮点数精度问题汇总
2015/05/13 PHP
PHP微信开发之文本自动回复
2016/06/23 PHP
php使用str_replace替换多维数组的实现方法分析
2017/06/15 PHP
详解PHP队列的实现
2019/03/14 PHP
一些常用的JS功能函数(2009-06-04更新)
2009/06/04 Javascript
JavaScript 应用技巧集合[推荐]
2009/08/30 Javascript
IE6下CSS图片缓存问题解决方法
2010/12/09 Javascript
jQuery ajax dataType值为text json探索分享
2013/09/23 Javascript
jQuery学习笔记之jQuery构建函数的7种方法
2014/06/03 Javascript
首页图片漂浮效果示例代码
2014/06/05 Javascript
Bootstrap精简教程中秋大放送
2016/09/15 Javascript
值得分享的bootstrap table实例
2016/09/22 Javascript
vue修改对象的属性值后页面不重新渲染的实例
2018/08/09 Javascript
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
[01:10]DOTA2 Supermajor:英雄,由我们见证
2018/05/14 DOTA
Django模板变量如何传递给外部js调用的方法小结
2017/07/24 Python
Python数据拟合与广义线性回归算法学习
2017/12/22 Python
Python实现手写一个类似django的web框架示例
2018/07/20 Python
Python中使用双下划线防止类属性被覆盖问题
2019/06/27 Python
Django Celery异步任务队列的实现
2019/07/24 Python
python中numpy数组与list相互转换实例方法
2021/01/29 Python
护理专业毕业生推荐信
2013/10/31 职场文书
汽车专业人才自我鉴定范文
2013/12/29 职场文书
幼儿园实习生辞职信
2014/01/20 职场文书
军校大学生个人的自我评价
2014/02/17 职场文书
绿色环保口号
2014/06/12 职场文书
小学教师读书活动总结
2014/07/08 职场文书
收款委托书范本
2014/09/11 职场文书
2015年试用期工作总结
2014/12/12 职场文书
2014年英语教学工作总结
2014/12/17 职场文书
2019关于垃圾分类处理的调查报告
2019/12/26 职场文书
pandas中DataFrame数据合并连接(merge、join、concat)
2021/05/30 Python
Nginx动静分离配置实现与说明
2022/04/07 Servers
Docker部署Mysql8的实现步骤
2022/07/07 Servers