代码实现无水印视频抓取并根据视频按帧取图。

你喜欢的抖音美女,每一帧都是壁纸,上码:

import requests
import re
from urllib import request
import cv2
import argparse
import os
import urllibdef get_parse(url):resp = requests.get(url)web_url = resp.urlitem_id = re.search('/(\d+)/', web_url).group(1).strip()print(item_id)api = 'https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids={}'info_api = api.format(item_id)resp = requests.get(info_api)content = resp.texturls = re.findall('"(http.*?)"', content)return urls, item_iddef get_need(urls):need_urls = []for url in urls:if 'large' in url:need_urls.append(url)elif 'playwm' in url:need_urls.append(url)else:print('移除项:', url)return need_urlsdef get_down(need_urls, item_id):for i, url in enumerate(need_urls):if 'playwm' in url:file_name = down_video(url, i, item_id)# else:# 用于下载图片#     down_pic(url, i, item_id)return file_namedef down_video(url, i, item_id):headers = {'User-Agent': 'Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Mobile Safari/537.36'}# 替换链接参数,使用手机heasers获取无水印视频url = re.sub('playwm', 'play', url)file_name = str(item_id) + "_" + str(i) + '.mp4'# start_time = time.time()requests.packages.urllib3.disable_warnings()resp = requests.get(url, headers=headers, stream=True, verify=False)print(resp.headers['content-length'])with open('cache/' + file_name, 'wb') as f:for i in resp.iter_content(50):if i:f.write(i)print('视频下载成功', url)return file_name# 图片下载方法,暂不调用
def down_pic(url, i, item_id):file_name = str(item_id) + '_' + str(i) + '.jpeg'try:request.urlretrieve(url, 'cache/' + file_name)print('下载成功', url)except:print('下载异常', url)def parse_args(file_name):parser = argparse.ArgumentParser(description='Process pic')parser.add_argument('--input', help='video to process', dest='input', default=None, type=str)parser.add_argument('--output', help='pic to store', dest='output', default=None, type=str)# default为间隔多少帧截取一张图片parser.add_argument('--skip_frame', dest='skip_frame', help='skip number of video', default=10, type=int)# input为输入视频的路径 ,output为输出存放图片的路径args = parser.parse_args(['--input', 'cache/' + file_name, '--output', 'cache/'])return argsdef process_video(i_video, o_video, num):cap = cv2.VideoCapture(i_video)num_frame = cap.get(cv2.CAP_PROP_FRAME_COUNT)expand_name = '.jpg'if not cap.isOpened():print("Please check the path.")cnt = 0count = 0while 1:ret, frame = cap.read()cnt += 1if cnt % num == 0:count += 1cv2.imwrite(os.path.join(o_video, str(count) + expand_name), frame)if not ret:breakif __name__ == '__main__':# 视频下载部分url = input('输入链接:')url = url.strip()urls, item_id = get_parse(url)need_urls = get_need(urls)file_name = get_down(need_urls, item_id)# 图片截取部分args = parse_args(file_name)if not os.path.exists(args.output):os.makedirs(args.output)print('执行截取:')print(args)process_video(args.input, args.output, args.skip_frame)

抖音无水印视频抓取与按帧截取图片相关推荐

  1. 抖音无水印视频爬虫(二)——爬虫的实现

    抖音无水印视频爬虫(二)--爬虫的实现 前面的抖音无水印视频爬虫(一)--踩坑,已经讲了相关的原理以及实现的过程 一.环境&Python Modules 1.OS:Deepin 15.10.1 ...

  2. c语言抓取抖音视频,【FiddlerScript】利用Fiddler中的FiddlerScript自动抓取抖音无水印视频并且自动保存...

    本帖最后由 小白大侠 于 2021-3-14 13:55 编辑 Fiddler自动抓取抖音无水印视频并且自动保存 前言:这段代码实用性不大,大量数据处理容易造成Fiddler卡死,只是希望给未来写Fi ...

  3. 用 Python 下载抖音无水印视频

    说起抖音,大家或多或少应该都接触过,如果大家在上面下载过视频,一定知道我们下载的视频是带有水印的,那么我们有什么方式下载不带水印的视频呢?其实用 Python 就可以做到,下面我们来看一下. 很多人学 ...

  4. 试验解析抖音无水印视频【PHP版】

    试验了网上很多抖音解析无水印视频的API,发现很多都是不稳定的.连今天要分享的这个api也是,总是那么不稳定.不过还好,总算是解析出了无水印视频.很多东西还是要自己调试一下才会知道哪里出bug了! 看 ...

  5. 怎么在腾讯云函数抖音无水印解析接口部署

    使用腾讯云函数(SCF)部署抖音无水印接口调用代码,无需服务器,稳定安全可靠! 示例接口返回数据请求: https://service-eu6l8yx0-1256101469.gz.apigw.ten ...

  6. 如何在线获取抖音无水印视频和视频背景音乐?

    如今抖音火遍大江南北,慢慢的已经融入了大家的生活,就像淘宝.微信一样,并且有自己的吸引人的特色. 普通用户看看视频就过去了,但是对于营销人员往往想要搬运视频,但是直接转的都是带水印的 发到其他平台 肯 ...

  7. java开发最新获取抖音无水印视频和背景音乐

    java版最新获取抖音无水印视频和背景音乐, 这个工具已经被我放到我的网站上做成了在线抖音无水印获取工具: 在线演示地址:http://www.yzcopen.com/video/dywsy 废话不多 ...

  8. python实现抖音无水印下载,从手动到脚本实现 2020

    工具下载链接:https://www.lanzous.com/ia4vgfg 视频创作不易,希望各位小伙伴尊重他人的作品哦 -------------------------------------- ...

  9. python无水印下载视频_用 Python 下载抖音无水印视频

    说起抖音,大家或多或少应该都接触过,如果大家在上面下载过视频,一定知道我们下载的视频是带有水印的,那么我们有什么方式下载不带水印的视频呢?其实用 Python 就可以做到,下面我们来看一下. 首先,我 ...

最新文章

  1. 收藏!工作中Git使用实践和常用命令流程合集
  2. Matlab使用技巧:Rapid Code Iteration Using Cells in the Editor
  3. 并发编程之Synchronized原理
  4. oracle24550,ORA-24550 Signal Received Error From Client Based Application
  5. c 语言绘图函数,c语言图形编程(三、绘图函数-)(C language graphics programming (three, drawing function -)).doc...
  6. vue获取输入框得内容_React入坑(四):获取输入框内的内容
  7. GeoTools——新建shapefile文件
  8. 推荐几个火狐常用的组件(三)
  9. 华为服务器修改登录密码,服务器登录修改密码
  10. atitit.提升备份文件复制速度(1) -----分析统计问题and解决方案
  11. 阿里巴巴矢量图标库的使用步骤
  12. Linux网络的网络配置(超详细,百分百成功)
  13. Java开发常见英文单词(带音标翻译)
  14. Android 使用讯飞语音SDK
  15. 怎么linux添加guest,如何为Ubuntu 16.04安装VirtualBox Guest Additions
  16. Activity到底是什么时候显示到屏幕上的呢?
  17. java程序设计心得_学习Java编程的学习方法总结
  18. 在w ndoWS7中屏幕保护程序,“屏保”存放在WINDOWS下的哪个文件夹 – 手机爱问
  19. 幸运抽奖java_java实现幸运抽奖系统
  20. Django中间件的使用及功能

热门文章

  1. 【pytorch】|tensor grad
  2. Command ‘ifconfig‘ not found/ubuntu无法联网(有线);Ubuntu联网只有lo 没有eth0情况;Ubuntu无线联网,有WIFI未发现WIFI适配器(有网卡)
  3. LEARUN快速开发平台,让开发变得更简单
  4. 都2022年了 究竟什么叫旗舰手机?
  5. NXP JN5169使用定时器进行PWM输出和定时功能
  6. 屏幕和摄像头中的视频分辨率P,I,K,MP表示的含义,720p,1080p,2k,5MP
  7. 去除高清视频锯齿几个方法
  8. N1-AI生成挑战赛#你想不到的猫,快来为你喜欢的作品投票吧!
  9. Pytorch 深度强化学习模型训练速度慢
  10. KuPlay:社区运营会是下一个风口吗?