只用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 04 Python
Python导出DBF文件到Excel的方法
Jul 25 Python
Windows下为Python安装Matplotlib模块
Nov 06 Python
Python函数中*args和**kwargs来传递变长参数的用法
Jan 26 Python
Python 中 list 的各项操作技巧
Apr 13 Python
TF-IDF与余弦相似性的应用(二) 找出相似文章
Dec 21 Python
深入浅析python 中的匿名函数
May 21 Python
对Django的restful用法详解(自带的增删改查)
Aug 28 Python
解决python虚拟环境切换无效的问题
Apr 30 Python
python numpy实现rolling滚动案例
Jun 08 Python
如何通过python计算圆周率PI
Nov 11 Python
Python列表的深复制和浅复制示例详解
Feb 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
用PHP和MySQL保存和输出图片
2006/10/09 PHP
安装APACHE
2007/01/15 PHP
ThinkPHP php 框架学习笔记
2009/10/30 PHP
php实现上传图片生成缩略图示例
2014/04/13 PHP
详解HTTP Cookie状态管理机制
2016/01/14 PHP
PHP Ajax实现无刷新附件上传
2016/08/17 PHP
JS 遮照层实现代码
2010/03/31 Javascript
有关javascript的性能优化 (repaint和reflow)
2013/04/12 Javascript
基于jquery和svg实现超炫酷的动画特效
2014/12/09 Javascript
JQuery实现左右滚动菜单特效
2015/09/28 Javascript
JS组件Bootstrap Table使用方法详解
2016/02/02 Javascript
第七章之菜单按钮图标组件
2016/04/25 Javascript
Bootstrap Navbar Component实现响应式导航
2016/10/08 Javascript
JS控制div跳转到指定的位置的几种解决方案总结
2016/11/05 Javascript
Extjs gridpanel 中的checkbox(复选框)根据某行的条件不能选中的解决方法
2017/02/17 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
2017/10/19 Javascript
Vue和React组件之间的传值方式详解
2019/01/31 Javascript
一文快速详解前端框架 Vue 最强大的功能
2019/05/21 Javascript
vue中解决拖拽改变存在iframe的div大小时卡顿问题
2020/07/22 Javascript
vue3.0封装轮播图组件的步骤
2021/03/04 Vue.js
Python文件和目录操作详解
2015/02/08 Python
Python利用前序和中序遍历结果重建二叉树的方法
2016/04/27 Python
深入解析python中的实例方法、类方法和静态方法
2019/03/11 Python
Python将string转换到float的实例方法
2019/07/29 Python
Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
2020/02/13 Python
python 牛顿法实现逻辑回归(Logistic Regression)
2020/10/15 Python
html5 touch事件实现页面上下滑动效果【附代码】
2016/03/10 HTML / CSS
澳大利亚拥有最佳跳伞降落点和最好服务的跳伞项目运营商:Skydive Australia
2018/03/05 全球购物
欧洲、亚洲、非洲和拉丁美洲的度假套餐:Great Value Vacations
2019/03/30 全球购物
美国精品地毯网站:Boutique Rugs
2020/03/04 全球购物
自我反省检讨书
2014/01/23 职场文书
文明餐桌活动方案
2014/02/11 职场文书
市场营销专业求职信
2014/06/17 职场文书
法制教育演讲稿
2014/09/10 职场文书
2015届本科毕业生自我鉴定
2014/09/27 职场文书
实习生矿工检讨书
2014/10/13 职场文书