只用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中实现对list做减法操作介绍
Jan 09 Python
Python isinstance函数介绍
Apr 14 Python
使用Python通过win32 COM打开Excel并添加Sheet的方法
May 02 Python
Python生成短uuid的方法实例详解
May 29 Python
Python双向循环链表实现方法分析
Jul 30 Python
NumPy 数组使用大全
Apr 25 Python
Python Matplotlib 基于networkx画关系网络图
Jul 10 Python
利用Python绘制Jazz网络图的例子
Nov 21 Python
python实现扫雷游戏
Mar 03 Python
python3中sorted函数里cmp参数改变详解
Mar 12 Python
python3 中时间戳、时间、日期的转换和加减操作
Jul 14 Python
Python列表元素删除和remove()方法详解
Jan 04 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
免费手机号码归属地API查询接口和PHP使用实例分享
2014/04/10 PHP
老版本PHP转义Json里的特殊字符的函数
2015/06/08 PHP
浅谈PHP正则中的捕获组与非捕获组
2016/07/18 PHP
PHP精确计算功能示例
2016/11/29 PHP
AppBaseJs 类库 网上常用的javascript函数及其他js类库写的
2010/03/04 Javascript
JavaScript初学者应注意的七个细节小结
2012/01/30 Javascript
Jquery UI震动效果实现原理及步骤
2013/02/04 Javascript
判断iframe里的页面是否加载完成
2014/06/06 Javascript
jQuery入门基础知识学习指南
2015/08/14 Javascript
jquery解析json格式数据的方法(对象、字符串)
2015/11/24 Javascript
BootStrap中的table实现数据填充与分页应用小结
2016/05/26 Javascript
JS调用打印机功能简单示例
2016/11/28 Javascript
微信小程序 scroll-view隐藏滚动条详解
2017/01/16 Javascript
深入浅析AngularJS中的一次性数据绑定 (bindonce)
2017/05/11 Javascript
React-Native之定时器Timer的实现代码
2017/10/04 Javascript
webpack配置导致字体图标无法显示的解决方法
2018/03/06 Javascript
Taro集成Redux快速上手的方法示例
2018/06/21 Javascript
angular6的响应式表单的实现
2018/10/10 Javascript
支付宝小程序tabbar底部导航
2018/11/06 Javascript
PHPStorm中如何对nodejs项目进行单元测试详解
2019/02/28 NodeJs
JQuery获取元素尺寸、位置及页面滚动事件应用示例
2019/05/14 jQuery
使用JavaScript通过前端发送电子邮件
2020/05/22 Javascript
Python的Bottle框架中实现最基本的get和post的方法的教程
2015/04/30 Python
Python中for循环控制语句用法实例
2015/06/02 Python
定制FileField中的上传文件名称实例
2017/08/23 Python
Python如何发布程序的详细教程
2018/10/09 Python
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
对Django的restful用法详解(自带的增删改查)
2019/08/28 Python
中国最大的潮流商品购物网站:YOHO!BUY有货
2017/01/07 全球购物
捷克家电和家具购物网站:OKAY.cz
2020/07/23 全球购物
2014年巴西世界杯口号
2014/06/05 职场文书
企业年检委托书范本
2014/10/14 职场文书
情况说明书怎么写
2015/10/08 职场文书
php png失真的原因及解决办法
2021/10/24 PHP
Nginx速查手册及常见问题
2022/04/07 Servers
代码复现python目标检测yolo3详解预测
2022/05/06 Python