抖音无水印小视频解析工具DouYinDownLoader v1.0

释放双眼,带上耳机,听听看~!
抖音小视频解析工具DouYinDownLoader v1.0支持解析抖音无水印视频链接并直接下载

软件简介

DouYinDownLoader v1.0

软件名称 DouYinDownLoader
软件版本 v1.0
软件类别 下载工具
适用平台 Windows
最近更新 2020.04.23

使用说明

支持分享的短链接和长链接

C#源代码

  1. using System;  
  2. using System.ComponentModel;  
  3. using System.IO;  
  4. using System.Net;  
  5. using System.Net.Http;  
  6. using System.Text.RegularExpressions;  
  7. using System.Windows.Forms;  
  8. using Newtonsoft.Json;  
  9.    
  10. namespace DouYinDownLoader  
  11. {  
  12.     public partial class Form1 : Form  
  13.     {  
  14.         private static HttpClient httpClient;  
  15.    
  16.         public Form1()  
  17.         {  
  18.             InitializeComponent();  
  19.    
  20.             HttpClientHandler handler = new HttpClientHandler();  
  21.             handler.UseCookies = false;  
  22.             httpClient = new HttpClient(handler);  
  23.             httpClient.DefaultRequestHeaders.Add(“User-Agent”“Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1”);  
  24.         }  
  25.    
  26.         private async void button1_ClickAsync(object sender, EventArgs e)  
  27.         {  
  28.             var url = textBox1.Text.Trim();  
  29.             if (string.IsNullOrEmpty(url))  
  30.             {  
  31.                 MessageBox.Show(“网址不能为空”);  
  32.                 return;  
  33.             }  
  34.             var html = await httpClient.GetStringAsync(url);  
  35.             var match = Regex.Match(html, “itemId: \”(\\d+)\””);  
  36.             if (match.Success)  
  37.             {  
  38.                 var itemId = match.Groups[1].ToString();  
  39.                 var json = await httpClient.GetStringAsync($“https://www.iesdouyin.com/web/api/v2/aweme/iteminfo/?item_ids={itemId}”);  
  40.                 var jsonObj = JsonConvert.DeserializeObject<dynamic>(json);  
  41.                 if (jsonObj.status_code == 0)  
  42.                 {  
  43.                     var videoUrl = jsonObj.item_list[0].video.play_addr.url_list[0].ToString();  
  44.                     var videoName = jsonObj.item_list[0].desc;  
  45.                     var saveDir = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, “videos”);  
  46.                     var saveFile = Path.Combine(saveDir, $“{videoName}.mp4”);  
  47.                     if (!Directory.Exists(saveDir))  
  48.                     {  
  49.                         Directory.CreateDirectory(saveDir);  
  50.                     }  
  51.                     if (!File.Exists(saveFile))  
  52.                     {  
  53.                         var downLoader = new WebClient();  
  54.                         downLoader.Headers.Add(“User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1”);  
  55.                         downLoader.DownloadFileAsync(new Uri(videoUrl), saveFile);  
  56.                         downLoader.DownloadFileCompleted += DownLoader_DownloadFileCompleted;  
  57.                         downLoader.DownloadProgressChanged += DownLoader_DownloadProgressChanged;  
  58.                     }  
  59.                     else  
  60.                     {  
  61.                         label1.Text = “文件已存在,无需重复下载!”;  
  62.                     }  
  63.                 }  
  64.                 else  
  65.                 {  
  66.                     MessageBox.Show(“解析失败!”);  
  67.                 }  
  68.             }  
  69.             else  
  70.             {  
  71.                 MessageBox.Show(“未找到视频!”);  
  72.             }  
  73.         }  
  74.    
  75.         private void DownLoader_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)  
  76.         {  
  77.             label1.Text = $“下载中 {e.TotalBytesToReceive / 1024}kb – {e.BytesReceived / 1024}kb”;  
  78.             progressBar1.Value = e.ProgressPercentage;  
  79.         }  
  80.    
  81.         private void DownLoader_DownloadFileCompleted(object sender, AsyncCompletedEventArgs e)  
  82.         {  
  83.             label1.Text = “下载完成”;  
  84.         }  
  85.     }  
  86. }  

版权声明

本站发布的部分内容包括:文章、图片、音频、视频、软件、程序等搜集于互连网,仅供学习交流,严禁用于商业用途,请于24小时内删除,如喜欢请购买正版,享受售后服务!

附件下载

下载权限

查看
  • ¥{{right.value}}
    {{right.value}}
    免费下载
    评论后下载
    登录后下载

  • {{attr.name}}:
您当前的等级为
您有每天免费下载所有资源次的特权,今日剩余 已取得下载权限

人已赞赏
Win软件

库课网视频下载 v1.0

2020-4-23 21:34:13

Win软件破解软件

Internet Download Manager(IDM) v6.37.12 俄罗斯重制版

2020-5-1 9:17:34

4 条回复 A文章作者 M管理员
  1. 这个怎么下载禁止下载的

  2. 找了好久

  3. 牛逼

  4. 已收藏

有新消息 消息中心
搜索