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处理文本文件实现生成指定格式文件的方法
Jul 31 Python
Python入门篇之面向对象
Oct 20 Python
深入浅析python定时杀进程
Jun 06 Python
使用Kivy将python程序打包为apk文件
Jul 29 Python
浅谈Python中的作用域规则和闭包
Mar 20 Python
创建pycharm的自定义python模板方法
May 23 Python
python多个模块py文件的数据共享实例
Jan 11 Python
tensorflow之并行读入数据详解
Feb 05 Python
一文了解python 3 字符串格式化 F-string 用法
Mar 04 Python
python 使用xlsxwriter循环向excel中插入数据和图片的操作
Jan 01 Python
python里glob模块知识点总结
Jan 05 Python
深入理解Python变量的数据类型和存储
Feb 01 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
PHP基于DOMDocument解析和生成xml的方法分析
2017/07/17 PHP
ThinkPHP 在阿里云上的nginx.config配置实例详解
2017/10/11 PHP
TP(thinkPHP)框架多层控制器和多级控制器的使用示例
2018/06/13 PHP
网页里控制图片大小的相关代码
2006/06/25 Javascript
仿新浪微博返回顶部的jquery实现代码
2012/10/01 Javascript
JS 跳转页面延迟2种方法
2013/03/29 Javascript
chrome浏览器不支持onmouseleave事件的解决技巧
2013/05/31 Javascript
jquery动态改变onclick属性导致失效的问题解决方法
2013/12/04 Javascript
js冒泡、捕获事件及阻止冒泡方法详细总结
2014/05/08 Javascript
浅谈jQuery中的eq()与DOM中element.[]的区别
2016/10/28 Javascript
JS正则RegExp.test()使用注意事项(不具有重复性)
2016/12/28 Javascript
bootstrap按钮插件(Button)使用方法解析
2017/01/13 Javascript
本地存储localStorage用法详解
2017/07/31 Javascript
原生JS实现的简单小钟表功能示例
2018/08/30 Javascript
详解element-ui中form验证杂记
2019/03/04 Javascript
微信小程序日历弹窗选择器代码实例
2019/05/09 Javascript
Node.js 实现简单的无侵入式缓存框架的方法
2019/07/21 Javascript
[04:22]DSPL第二期精彩集锦:残血反杀!
2014/12/10 DOTA
Python装饰器基础详解
2016/03/09 Python
Python开发之快速搭建自动回复微信公众号功能
2016/04/22 Python
Python简单实现阿拉伯数字和罗马数字的互相转换功能示例
2018/04/17 Python
python re正则匹配网页中图片url地址的方法
2018/12/20 Python
Django实现发送邮件功能
2019/07/18 Python
Python3 Tkinkter + SQLite实现登录和注册界面
2019/11/19 Python
使用Python画出小人发射爱心的代码
2019/11/23 Python
Matplotlib animation模块实现动态图
2021/02/25 Python
static关键字的用法
2013/10/07 面试题
What is view? why do we have view?
2012/06/22 面试题
.NET里面什么时候需要调用垃圾回收
2015/06/01 面试题
工程技术员岗位职责
2014/03/02 职场文书
学历公证委托书
2014/04/09 职场文书
2015元旦晚会主持人开场白+结束语
2014/12/14 职场文书
致运动员加油稿
2015/07/21 职场文书
新教师2015年度工作总结
2015/07/22 职场文书
幼儿园2016年感恩节活动总结
2016/04/01 职场文书
Redis sentinel哨兵集群的实现步骤
2022/07/15 Redis