在C#中使用libvideo下载的代理

时间:2019-06-17 08:49:04

标签: c# proxy youtube youtube-dl

有人熟悉libvideo吗?我的应用程序中有[libvideo][1]

如何将代理配置注入libvideo

using VideoLibrary;

void SaveVideoToDisk(string link)
{
    var youTube = YouTube.Default; // starting point for YouTube actions
    var video = youTube.GetVideo(link); // gets a Video object with info about the video
    File.WriteAllBytes(@"C:\" + video.FullName, video.GetBytes());
}

1 个答案:

答案 0 :(得分:1)

似乎libvideo不支持代理。因此,我必须使用youtube-dl并更正上​​面的代码

public static void YouTubeDownloaderWithProxy(string link, string path)
{
    Process youTube = new Process();
    try
    {
        string code = link.Split('/').LastOrDefault();
        string proxy = @"http://....:8585/";
        string youtubeUrl = @"https://www.youtube.com/watch?v=" + "code";

        youTube.StartInfo.UseShellExecute = true;
        youTube.StartInfo.CreateNoWindow = false;
        youTube.StartInfo.FileName = Application.StartupPath + @"\youtube-dl.exe";
        youTube.StartInfo.Arguments = $"--proxy {proxy} -o '{path}' {youtubeUrl}";

        youTube.Start();
        youTube.WaitForExit();
        youTube.Dispose();
    }
    catch (Exception e)
    {
        MessageBox.Show(e.Message);
    }

}