只用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遍历C盘dll文件的方法
May 06 Python
python实现多线程的方式及多条命令并发执行
Jun 07 Python
Python 搭建Web站点之Web服务器网关接口
Nov 06 Python
python解析基于xml格式的日志文件
Feb 25 Python
python实现多线程行情抓取工具的方法
Feb 28 Python
python自动重试第三方包retrying模块的方法
Apr 24 Python
Python实现点阵字体读取与转换的方法
Jan 29 Python
python实现鸢尾花三种聚类算法(K-means,AGNES,DBScan)
Jun 27 Python
python+selenium 点击单选框-radio的实现方法
Sep 03 Python
python实现12306登录并保存cookie的方法示例
Dec 17 Python
解决Jupyter NoteBook输出的图表太小看不清问题
Apr 16 Python
python代码实现扫码关注公众号登录的实战
Nov 01 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网页木马一枚 附PHP木马的防范方法
2009/10/09 PHP
PHP中is_file()函数使用指南
2015/05/08 PHP
php实现将数据做成json的格式给前端使用
2018/08/21 PHP
JQuery遍历DOM节点的方法
2015/06/11 Javascript
JavaScript省市区三级联动菜单效果
2016/09/21 Javascript
angular和BootStrap3实现购物车功能
2017/01/25 Javascript
nodejs基础知识
2017/02/03 NodeJs
js中作用域的实例解析
2017/03/16 Javascript
AngularJS 实现购物车全选反选功能
2017/10/24 Javascript
vue自动路由-单页面项目(非build时构建)
2019/04/30 Javascript
详解node.js 事件循环
2020/07/22 Javascript
python中使用enumerate函数遍历元素实例
2014/06/16 Python
python转换字符串为摩尔斯电码的方法
2015/07/06 Python
在Django的URLconf中进行函数导入的方法
2015/07/18 Python
python用户评论标签匹配的解决方法
2018/05/31 Python
使用python生成杨辉三角形的示例代码
2018/08/29 Python
python实现反转部分单向链表
2018/09/27 Python
Python后台开发Django会话控制的实现
2019/04/15 Python
Python Numpy 实现交换两行和两列的方法
2019/06/26 Python
Python OpenCV实现鼠标画框效果
2020/08/19 Python
Python使用py2neo操作图数据库neo4j的方法详解
2020/01/13 Python
Python while循环使用else语句代码实例
2020/02/07 Python
python等待10秒执行下一命令的方法
2020/07/19 Python
Champion官网:美国冠军运动服装
2017/01/25 全球购物
Supersmart英国:欧洲市场首批食品补充剂供应商之一
2018/05/05 全球购物
英国No.1体育用品零售商:SportsDirect.com
2019/10/16 全球购物
新加坡鲜花速递/新加坡网上花店:Ferns N Petals
2020/08/29 全球购物
《小白兔和小灰兔》教学反思
2014/02/18 职场文书
2014年房产销售工作总结
2014/12/08 职场文书
离婚协议书怎么写
2015/01/26 职场文书
体育教师研修感悟
2015/11/18 职场文书
Flask搭建一个API服务器的步骤
2021/05/28 Python
浅谈Web Storage API的使用
2021/06/23 Javascript
Python多线程 Queue 模块常见用法
2021/07/04 Python
vue2的 router在使用过程中遇到的一些问题
2022/04/13 Vue.js
JS class语法糖的深入剖析
2022/07/07 Javascript