只用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的Twisted框架上手前所必须了解的异步编程思想
May 25 Python
用python的requests第三方模块抓取王者荣耀所有英雄的皮肤实例
Dec 14 Python
浅谈Python实现贪心算法与活动安排问题
Dec 19 Python
selenium+python实现自动登录脚本
Apr 22 Python
和孩子一起学习python之变量命名规则
May 27 Python
python对list中的每个元素进行某种操作的方法
Jun 29 Python
对python 数据处理中的LabelEncoder 和 OneHotEncoder详解
Jul 11 Python
Appium+python自动化怎么查看程序所占端口号和IP
Jun 14 Python
Python在cmd上打印彩色文字实现过程详解
Aug 07 Python
Python使用windows设置定时执行脚本
Nov 12 Python
python批量生成身份证号到Excel的两种方法实例
Jan 14 Python
python urllib和urllib3知识点总结
Feb 08 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
第4章 数据处理-php字符串的处理-郑阿奇(续)
2011/07/04 PHP
php判断字符串在另一个字符串位置的方法
2014/02/27 PHP
CodeIgniter安全相关设置汇总
2014/07/03 PHP
PHP实现的文件浏览器功能简单示例
2019/09/12 PHP
window.addEventListener来解决让一个js事件执行多个函数
2012/12/26 Javascript
PHP和NodeJs开发的应用如何共用Session
2015/04/16 NodeJs
jQuery中next方法用法实例
2015/04/24 Javascript
jquery地址栏链接与a标签链接匹配之特效代码总结
2015/08/24 Javascript
jQuery ajaxForm()的应用
2016/10/14 Javascript
浅谈js对象属性 通过点(.) 和方括号([]) 的不同之处
2016/10/29 Javascript
jQuery Datatable 多个查询条件自定义提交事件(推荐)
2017/08/24 jQuery
Node.js创建Web、TCP服务器
2017/12/05 Javascript
javascript实现获取一个日期段内每天不同的价格(计算入住总价格)
2018/02/05 Javascript
图文介绍Vue父组件向子组件传值
2018/02/17 Javascript
微信小程序项目实践之主页tab选项实现
2018/07/18 Javascript
animate.css在vue项目中的使用教程
2018/08/05 Javascript
react-native滑动吸顶效果的实现过程
2019/06/03 Javascript
小程序实现tab标签页
2020/11/16 Javascript
使用AutoJs实现微信抢红包的代码
2020/12/31 Javascript
[01:03:31]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第二局
2016/02/26 DOTA
跟老齐学Python之永远强大的函数
2014/09/14 Python
Python 字典dict使用介绍
2014/11/30 Python
Python的Flask框架中@app.route的用法教程
2015/03/31 Python
python实现爬取千万淘宝商品的方法
2015/06/30 Python
Python文本相似性计算之编辑距离详解
2016/11/28 Python
python中类和实例如何绑定属性与方法示例详解
2017/08/18 Python
python+ffmpeg批量去视频开头的方法
2019/01/09 Python
判断python对象是否可调用的三种方式及其区别详解
2019/01/31 Python
Bootstrap 学习分享
2012/11/12 HTML / CSS
植物选择:Botanic Choice
2017/02/15 全球购物
阿里健康官方海外旗舰店:阿里健康国际自营
2017/11/24 全球购物
澳大利亚设计师服装在线:MISHA
2019/10/07 全球购物
公证书样本
2014/04/10 职场文书
防暑降温通知书
2015/04/27 职场文书
七年级语文教学反思
2016/03/03 职场文书
笔记本自带的win11如何跳过联网激活?
2022/04/20 数码科技