只用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算法学习之计数排序实例
Dec 18 Python
Python中的getopt函数使用详解
Jul 28 Python
Python之web模板应用
Dec 26 Python
Python 查找list中的某个元素的所有的下标方法
Jun 27 Python
对python实时得到鼠标位置的示例讲解
Oct 14 Python
python 控制Asterisk AMI接口外呼电话的例子
Aug 08 Python
解决 jupyter notebook 回车换两行问题
Apr 15 Python
Python unittest单元测试openpyxl实现过程解析
May 27 Python
Python如何基于Tesseract实现识别文字功能
Jun 05 Python
用Python开发app后端有优势吗
Jun 29 Python
python 模拟登陆github的示例
Dec 04 Python
python工具——Mimesis的简单使用教程
Jan 16 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操作redis缓存方法分享
2015/06/03 PHP
php加密之discuz内容经典加密方式实例详解
2017/02/04 PHP
[原创]js与自动伸缩图片 自动缩小图片的多浏览器兼容的方法总结
2007/03/12 Javascript
向左滚动文字 js代码效果
2013/08/17 Javascript
Javascript图片上传前的本地预览实例
2014/06/16 Javascript
javascript实现类似百度分享功能的方法
2015/07/27 Javascript
jquery代码实现多选、不同分享功能
2015/07/31 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
jQuery实现手机版页面翻页效果的简单实例
2016/10/05 Javascript
利用js的闭包原理做对象封装及调用方法
2017/04/07 Javascript
vue组件中点击按钮后修改输入框的状态实例代码
2017/04/14 Javascript
JavaScript基础之this详解
2017/06/04 Javascript
vue实现商城购物车功能
2017/11/27 Javascript
jQuery位置选择器用法实例分析
2019/06/28 jQuery
javascript头像上传代码实例
2019/09/28 Javascript
Javascript实现鼠标点击冒泡特效
2019/12/24 Javascript
[01:53]DOTA2超级联赛专访Zhou 五年职业青春成长
2013/05/29 DOTA
用Python编程实现语音控制电脑
2014/04/01 Python
详解Python中列表和元祖的使用方法
2015/04/25 Python
python数据结构之图深度优先和广度优先实例详解
2015/07/08 Python
python:socket传输大文件示例
2017/01/18 Python
python 判断是否为正小数和正整数的实例
2017/07/23 Python
python实现决策树分类算法
2017/12/21 Python
Python并行分布式框架Celery详解
2018/10/15 Python
对python中的高效迭代器函数详解
2018/10/18 Python
Python二叉搜索树与双向链表转换算法示例
2019/03/02 Python
scrapy爬虫:scrapy.FormRequest中formdata参数详解
2020/04/30 Python
Python3.7下安装pyqt5的方法步骤(图文)
2020/05/12 Python
纯CSS3实现漂亮的input输入框动画样式库(Text input love)
2018/12/29 HTML / CSS
HTML5验证以及日期显示的实现详解
2013/07/05 HTML / CSS
煤矿班组长竞聘书
2014/03/31 职场文书
《秋游》教学反思
2014/04/24 职场文书
职场中的你,辞职信写对了吗?
2019/06/26 职场文书
100句拼搏进取的名言警句,值得一读!
2019/10/07 职场文书
Nginx代理同域名前后端分离项目的完整步骤
2021/03/31 Servers
前端JS获取URL参数的4种方法总结
2022/04/05 Javascript