目录

1.引言

2.实现思路

3.完整代码


1.引言

最近遇到个需求,根据抖音分享链接批量下载抖音短视频。

用到的接口为:https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=视频id。

2.实现思路

首先根据短连接获取视频id,然后将接口和视频ID拼接,获取视频地址,然后对视频地址的内容进行解析,获取无水印下载链接(downLoadURL)。最后将视频保存至本地。话不多说,直接上代码。

3.完整代码

string shortURL = "https://v.douyin.com/YAgC83s/";//获取抖音视频ID
private void DownloadByShortUrl(string shortURL)
{string userAgent = "Mozilla/ 5.0(Windows NT 10.0; Win64; x64) AppleWebKit / 537.36(KHTML, like Gecko) Chrome / 87.0.4280.88 Safari / 537.36";string id = string.Empty;string content = string.Empty;string downLoadURL = string.Empty;try{HttpWebRequest req = (HttpWebRequest)WebRequest.Create(shortURL);req.Method = "GET";req.AllowAutoRedirect = false; req.Timeout = 10000;WebResponse resp = req.GetResponse();string url = resp.Headers["Location"];Match match = Regex.Match(url, @"video/(.*?)/");if (!match.Groups[1].Success || match.Groups[1].Value.Length != 19)MessageBox.Show("下载链接格式错误");id = match.Groups[1].Value;//获取视频地址string vedioURL = "https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids=" + id;HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(vedioURL);request.Method = "GET";request.Accept = "*/*";request.Timeout = 10000;request.AllowAutoRedirect = false;request.UserAgent = userAgent;WebResponse webResp = (WebResponse)request.GetResponse();StreamReader reader = new StreamReader(webResp.GetResponseStream(), Encoding.UTF8);content = reader.ReadToEnd();//获取无水印视频下载地址JObject json = JObject.Parse(content);List<JToken> itemList = json["item_list"].ToList();if (itemList.Count == 0)MessageBox.Show("下载失败, 作品不存在");downLoadURL = itemList[0]["video"]["play_addr"]["url_list"].ToList()[0].ToString();downLoadURL = downLoadURL.Replace("playwm", "play"); //去掉水印//保存视频文件到本地SaveFileDialog dialog = new SaveFileDialog();dialog.Title = "请选择要保存的路径";dialog.Filter = "视频文件|*.mp4|视频文件|*.avi|所有文件|*.*";dialog.ShowDialog();//获得保存文件的路径string savePath = dialog.FileName;HttpWebRequest web = (HttpWebRequest)WebRequest.Create(downLoadURL);web.Method = "GET";web.UserAgent = userAgent;HttpWebResponse response = (HttpWebResponse)web.GetResponse();FileStream file = new FileStream(savePath, FileMode.Create);response.GetResponseStream().CopyTo(file);file.Close();}catch (Exception ex){MessageBox.Show("下载失败," + ex.Message);}
}

C# 实现批量下载抖音里的无水印视频相关推荐

  1. 如何导出无水印_抖音视频怎么去水印 抖音怎么导出无水印视频

    去水印神速 去水印去水印短视频去水印小工具去水印解析去水印免费版去水印助手去水印软件去水印视频一键去水印快手去水印 随着短视频越来越火爆,玩抖音的人也越来越多.有人发就有人下载,有人下载就需要考虑水印 ...

  2. 如何批量下载抖音某个大姐姐的视频

    外面这种工具很多,说说特点吧. 1.批量获取所有视频,无水印: 2.可以一次性快速拷贝链接到迅雷下载: 3.原抖音视频链接用迅雷下载时文件名都是乱的,也保存不了mp4格式.这里做了一个中间层,实现了智 ...

  3. python批量下载抖音无水印视频,附软件

    网上很多那种抖音视频解析,去水印下载的网站,不过都只可以下单个,下下来大多数标题还是乱码.一点都不geek. 咱们懒人找资源的粉丝最大的优点就是懒,这种重复性的活python帮咱们搞定. 批量下载抖音 ...

  4. python之批量下载抖音视频

    python批量下载抖音视频 知识储备:博主是在Pycharm下进行的 文件夹:dou_ying 1:在文件夹doy_ying下新建第一个文件:dou_ying_video_download.py 代 ...

  5. 抖音里王者荣耀游戏视频搞怪的配音怎么做

    抖音里王者荣耀游戏视频搞怪的配音怎么做? 2020-10-13 17:06 来源:二喵的鱼 原标题:抖音里王者荣耀游戏视频搞怪的配音怎么做? 盘点抖音视频爆品类型,不知不觉中搞笑的游戏视频竟已冲出了一 ...

  6. python爬虫视频下载代码_Python3百行代码批量下载抖音视频|python爬虫|python入门|python教程...

    https://www.xin3721.com/eschool/pythonxin3721/ 本文转载至知乎ID:Charles(白露未晞)知乎个人专栏 下载W3Cschool手机App,0基础随时随 ...

  7. Python批量下载 抖音无水印视频!

    导读: 本文 介绍了如何使用简单的Python爬虫爬取抖音上你喜欢的拍客的所有视频(包含 有水印和 无水印两种 ). 代码已上传至公众号后台,回复: 抖音 即可获得. 一.获取你喜欢的拍客的视频url ...

  8. 超级简单,爆文阁批量下载抖音,快手,微视,西瓜视频教程。

    第一步:从app里面点击分享,然后复制链接 ,进入爆文阁 解析链接获取所有视频,然后点击添加到云控下载,如下图所示 第二步:到云控下载可以看到刚才添加的视频,然后点击开始下载 ,速度超级快 基本上1秒 ...

  9. 批量下载抖音快手视频

    官网 http://www.9izs.com/

  10. 抖音上css照片动态旋转怎么做,抖音里单张图片平移视频怎么制作?影音制作实现一张图片从左到右滑动视频效果...

    今天的影音制作,是实现视频画面中有一张图片从左往右慢慢滑动的视频效果.一张横屏图片要制作成竖视频的时候,要么就会出现图片显示不全的情况,要么显示全了就会出现上下有黑边的情况,基本很难解决这个问题~但是 ...

最新文章

  1. 华为开源CTR Benchmark,学术界SOTAs的照妖镜?
  2. python文档生成工具 sphinx 简介
  3. python - django (auth 的使用)
  4. 【WebRTC】网页实时通信
  5. 三轴联动c语言算法,(数控加工)虚拟轴数控机床的仿三轴控制.pdf
  6. Jquery的toggle()与trigger()方法
  7. 如何使用js动态显示或隐藏DIV
  8. 导入android工程@Override报错
  9. HDU 4508 湫湫系列故事——减肥记I (2013腾讯编程马拉松初赛第一场)
  10. python整数类型与数学-Python类型和运算--数字
  11. springboot 项目里使用spring.xml文件
  12. 体验迟到:果然是魔鬼定律,一路上多种障碍
  13. sql server中replace()函数,可用于字符串替换
  14. jdk下载/Linux64位 jdk1.8 jdk-8u161下载
  15. WAP加密和WEP加密比较
  16. 读书行动笔记2013第2本:《整理的艺术》
  17. 查看dll文件的两种办法
  18. 2017年中国智能卡行业发展现状分析及市场发展前景预测
  19. vue之table案例
  20. Mysql保存emoji表情

热门文章

  1. 布料仿真先导3-带阻尼的双球单摆下的拉格朗日方程列些和matlab仿真
  2. mb778cn 计算机故障或繁忙,松下 KX-MB778CN驱动
  3. 打开计算机任务栏有桌面没,如何解决Win7任务栏不显示打开的窗口的问题
  4. linux下安装mysql
  5. 小管家进销存_管钱、管货、管顾客,“北漂”京东便利店主点赞掌柜管家
  6. 微信小程序获取手机号
  7. GRE高频词汇出现频率汇总
  8. c# hook技术的实现
  9. Windows下 使用Python 3 调用讯飞 TTS 引擎实现文本转语音
  10. linux 一键网克,MaxDOS 8.0