思路
使用python爬虫爬取视频指定秒,首先我们知道视频是由很多帧组成的,如果我们想要爬取视频里面指定秒的画面,需要先解析这个视频,将这个视频分割成很多帧,然后我们要获取视频的帧率fps(即每秒由多少帧组成),然后将帧率和指定秒结合起来就可获取视频指定秒画面
安装工具
安装opencv,用于读取和解析视频
pip install opencv-python
操作
以下是我已经封装好的类,调用类里面的getImg函数,三个主要参数,对象self,指定描述a,视频链接src(本地或在线的都可)
import cv2
class analyse:
def save_image(self,image, addr, num):
address = addr + str(num) + '.jpg'
cv2.imwrite(address, image)
print('生成成功')
def getImg(self,a,src):
print('开始读取')
video = cv2.VideoCapture(src)
index=a*video.get(cv2.CAP_PROP_FPS)
video.set(cv2.CAP_PROP_POS_FRAMES, index)
if video.isOpened():
success, frame = video.read()
print('开始生成')
self.save_image(self,frame, './image/', a)
|