python 通过视频url获取视频的宽高方式


Posted in Python onDecember 10, 2019

这里其实是通过获取视频截图的方式获得大小的

下面列举两个小demo

import cv2 #引入模块 获取视频截图的
 
from PIL import Image #引入模块 获取图片大小
import os #引入系统命令 删除图片
video_full_path="http://qnmov.a.yximgs.com/upic/2018/06/06/12/BMjAxODA2MDYxMjQwMTZfMTkzMDUyMjRfNjU2NzMwNzI5MF8xXzM=_hd3_Bc143c8abf799984d2cc75a52de7039f0.mp4?tag=1-1530685096-h-0-xbkiau97pb-2b932528a435f1d0"
cap = cv2.VideoCapture(video_full_path)
#print(cap.isOpened())
if cap.isOpened():#正常打开
  rval,frame = cap.read()
else:
  rval = False
cv2.imwrite("a.jpg",frame)
img = Image.open('a.jpg')
print(type(img.size))
print(img.size[0])
print(type(img.size[0]))
my_file = "images/1.jpg"
if os.path.exists(my_file):
  os.remove(my_file)
else:
 
  print("no such file")

demo2 更新数据库

#!/usr/bin/env python3
#-*- coding:utf-8 -*-
from short_video import ShortVideo
import json
import re
import requests
import hashlib
import cv2
from PIL import Image
import logging
import os
try:
  query = ShortVideo().select()
except:
  print('操作失败')
else:
  for item in query:
    shv = ShortVideo().select().where(ShortVideo.video_identify_md5 == item.video_identify_md5).get()
    video_url = shv.video_url
    cap = cv2.VideoCapture(video_url)
    if cap.isOpened():
      rval,frame = cap.read()
 
 
      cv2.imwrite("images/"+str(shv.id)+".jpg",frame)
      img = Image.open("images/"+str(shv.id)+".jpg")
      w = img.size[0]
      h = img.size[1]
      shv.width_height = str(w)+'x'+str(h)
      #更新完删除文件
      my_file = "images/"+str(shv.id)+".jpg"
      if os.path.exists(my_file):
        os.remove(my_file)
      else:
        logging.info("no such file")
    else:
      logging.info('id:'+str(shv.id)+"更新失败")
      continue
 
 
    if shv.save() == 1:
      print('更新成功')
    else:
      print('更新失败')

以上这篇python 通过视频url获取视频的宽高方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python进行数据科学工作的简单入门教程
Apr 01 Python
Python中django学习心得
Dec 06 Python
人脸识别经典算法一 特征脸方法(Eigenface)
Mar 13 Python
Python针对给定列表中元素进行翻转操作的方法分析
Apr 27 Python
Python利用递归实现文件的复制方法
Oct 27 Python
Python图像处理之直线和曲线的拟合与绘制【curve_fit()应用】
Dec 26 Python
Python快速转换numpy数组中Nan和Inf的方法实例说明
Feb 21 Python
Python下简易的单例模式详解
Apr 08 Python
Django Python 获取请求头信息Content-Range的方法
Aug 06 Python
python集合删除多种方法详解
Feb 10 Python
python 读txt文件,按‘,’分割每行数据操作
Jul 05 Python
上帝为你开了一扇窗之Tkinter常用函数详解
Jun 02 Python
Python imageio读取视频并进行编解码详解
Dec 10 #Python
Python中Subprocess的不同函数解析
Dec 10 #Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
Dec 10 #Python
python 视频逐帧保存为图片的完整实例
Dec 10 #Python
python 实现视频 图像帧提取
Dec 10 #Python
python-视频分帧&多帧合成视频实例
Dec 10 #Python
python实现视频读取和转化图片
Dec 10 #Python
You might like
人族 Terran 魔法与科技
2020/03/14 星际争霸
简单的页面缓冲技术
2006/10/09 PHP
为PHP5.4开启Zend OPCode缓存
2014/12/26 PHP
PHP基于SimpleXML生成和解析xml的方法示例
2017/07/17 PHP
php实现的统计字数函数定义与使用示例
2017/07/26 PHP
PHP Socket网络操作类定义与用法示例
2017/08/30 PHP
PHP之认识(二)关于Traits的用法详解
2019/04/11 PHP
php生成微信红包数组的方法
2019/09/05 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
2019/12/18 PHP
新手常遇到的一些jquery问题整理
2010/08/16 Javascript
招聘网站基于jQuery实现自动刷新简历
2015/05/10 Javascript
仅30行代码实现Javascript中的MVC
2016/02/15 Javascript
JavaScript中的时间处理小结
2016/02/24 Javascript
基于JavaScript实现下拉列表左右移动代码
2017/02/07 Javascript
webpack 2.x配置reactjs基本开发环境详解
2017/08/08 Javascript
探讨Vue.js的组件和模板
2017/10/27 Javascript
webpack构建的详细流程探底
2018/01/08 Javascript
vue2.0使用swiper组件实现轮播的示例代码
2018/03/03 Javascript
mpvue构建小程序的方法(步骤+地址)
2018/05/22 Javascript
Vue组件间的通信pubsub-js实现步骤解析
2020/03/11 Javascript
antd 表格列宽自适应方法以及错误处理操作
2020/10/27 Javascript
Python中使用ElementTree解析XML示例
2015/06/02 Python
python实现机器学习之元线性回归
2018/09/06 Python
python tornado使用流生成图片的例子
2019/11/18 Python
Python 读取 YUV(NV12) 视频文件实例
2019/12/09 Python
Python如何实现机器人聊天
2020/09/10 Python
CSS3 对过渡(transition)进行调速以及延时
2020/10/21 HTML / CSS
美国女性卫生用品公司:Thinx
2017/06/30 全球购物
毕业生动漫设计求职信
2013/10/11 职场文书
生物科学专业个人求职信范文
2013/12/05 职场文书
同事打架检讨书
2014/02/04 职场文书
运动会稿件300字
2014/02/14 职场文书
旅游市场营销方案
2014/03/09 职场文书
家长对孩子的评语
2014/04/18 职场文书
不服从公司安排检讨书
2014/09/24 职场文书
2015年八一建军节演讲稿
2015/03/19 职场文书