1、去重
2、分享 3、视频播放 4、批量删除,重新下载 5、自定义标题(仅博主视频) 6、授权页面去掉博主添加,新增关注列表 7、图文视频合成优化 8、其他优化
This commit is contained in:
@@ -14,29 +14,12 @@ namespace dy.image
|
||||
public DownloadHelper(HttpClient httpClient)
|
||||
{
|
||||
_httpClient = httpClient;
|
||||
_httpClient.Timeout = TimeSpan.FromSeconds(60); // 下载超时30秒
|
||||
_httpClient.Timeout = TimeSpan.FromSeconds(60); // 下载超时60秒
|
||||
_httpClient.DefaultRequestHeaders.Add("Accept-Language", "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2");
|
||||
_httpClient.DefaultRequestHeaders.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/119.0.0.0 Safari/537.36");
|
||||
_httpClient.DefaultRequestHeaders.Add("Referer", "https://www.douyin.com");
|
||||
}
|
||||
|
||||
/// <summary>下载网络文件到指定路径</summary>
|
||||
public async Task DownloadFileAsync(string url, string savePath)
|
||||
{
|
||||
if (string.IsNullOrEmpty(url)) throw new ArgumentNullException(nameof(url));
|
||||
if (string.IsNullOrEmpty(savePath)) throw new ArgumentNullException(nameof(savePath));
|
||||
|
||||
// 创建目录(如果不存在)
|
||||
var directory = Path.GetDirectoryName(savePath)!;
|
||||
if (!Directory.Exists(directory)) Directory.CreateDirectory(directory);
|
||||
|
||||
// 下载文件
|
||||
using var response = await _httpClient.GetAsync(url, HttpCompletionOption.ResponseHeadersRead);
|
||||
response.EnsureSuccessStatusCode(); // 非2xx状态码抛出异常
|
||||
|
||||
using var stream = await response.Content.ReadAsStreamAsync();
|
||||
using var fileStream = new FileStream(savePath, FileMode.Create, FileAccess.Write, FileShare.None, 8192, true);
|
||||
await stream.CopyToAsync(fileStream);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -44,7 +44,7 @@
|
||||
{
|
||||
if(downImage)
|
||||
{
|
||||
for (int i = 0; i < rawImages.Count(); i++)
|
||||
for (int i = 0; i < rawImages.Length; i++)
|
||||
{
|
||||
string sourcePath = rawImages[i];
|
||||
// 重命名为有规律的文件名,如 temp_001.jpg, temp_002.png
|
||||
@@ -66,7 +66,7 @@
|
||||
{
|
||||
if(downMp3)
|
||||
{
|
||||
for (int i = 0; i < rawAudios.Count(); i++)
|
||||
for (int i = 0; i < rawAudios.Length; i++)
|
||||
{
|
||||
string sourcePath = rawAudios[i];
|
||||
// 重命名为有规律的文件名,如 temp_001.mp3, temp_002.mp3
|
||||
|
||||
Reference in New Issue
Block a user