如何用python录制屏幕?
来源:网络收集 点击: 时间:2024-03-12这里我使用pycharm,大家也可以用其他的python编辑器。我们先创建test0.py文件。

安装必需的库:pillow,opencv-python和numpy。它们分别有不同的作用。
自带库time,用于定时录制。

Pillow库的使用:
pillow是python中用于处理图像的库,在此次录屏中起到获取屏幕信息的作用
from PIL import ImageGrab
screen=PIL.ImageGrab.grab() -将屏幕赋给对象
widh,high=screen.size -获取屏幕的高和宽
opencv-python库的使用:
fourcc=cv2.VideoWriter_fourcc(*XVID) -配置好视频编解码器
XVID:MPEG-4视频编解码器
fps=5 -帧率设置为5
video=cv2.VideoWriter(跳舞.avi,fourcc,fps,(widh,high)) -创建视频对象
video.write() -写入视频
cv2.namedWindow(窗口名, 0) -使窗口可变
cv2.resizeWindow(窗口名, 0, 0) -改变窗口大小为最小
cv2.imshow(jump,0) -展示窗口
cv2.waitKey(时间) -时间取0,表示永远等待,100代表以100ms为周期等待
cv2.cvtColor(np.array(capture), cv2.COLOR_RGB2BGR) -将图片数组从BGR格式转换成RGB格式
time库的使用:
second=3 -等待时间
time.sleep(3) -等待3秒钟
numpy库的使用:
import numpy as np
np.array(图片) -处理图片数组

编写程序
fps =5
screen=ImageGrab.grab()
widh,high=screen.size
fourcc=cv2.VideoWriter_fourcc(*XVID)
video=cv2.VideoWriter(jump.avi, fourcc, fps,(widh,high))
time.sleep(3) #有时间缓冲
while True :
capture = ImageGrab.grab()
image = cv2.cvtColor(np.array(capture), cv2.COLOR_RGB2BGR)
video.write(image)
cv2.namedWindow(jump, 0)
cv2.resizeWindow(jump, 0, 0)
cv2.imshow(jump,0)
if cv2.waitKey(100) 0xFF == ord(q):
#这里的 0xFF代表取最低八位,也就是一个字节
break#退出循环
video.release() #一定不要忘,闭合视频
cv2.destroyAllWindows()#销毁窗口

运行结果
左上角会出现一个黑色窗口,表示开始录制。点击窗口敲击“Q”,就会退出录制,视频保存在指定目录下。


如果希望更加完美的话,可以尝试用线程+pynput完善程序。
注意事项喜欢python就关注我吧!
PYTHON编程录屏PYCHARM电脑版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_324913.html