前一段时间我开了一个帖子(链接在底部)。 而且我很高兴地说已经修复了,部分原因。 它仍然使用错误的YouTube链接。 由于youtube不断更新所有示例,我可以找到破碎的地方。 我认为这与“常规”表达有关。 有人可以在这个问题上启发我吗?
现在对于手头的错误: System.dll中出现未处理的“System.Net.WebException”类型异常 附加信息:远程服务器返回错误:(403)禁止。 在第22行:wc.DownloadFile(kvp.Value,@“C:\ Users \ waralot \ Downloads \ youtube \”+ kvp.Key);
编译期间的控制台位于:pastebin.com/BrgKkAmk
HackForums的原创项目:http://www.hackforums.net/showthread.php?tid=2052105
我当前的版本:http://pastebin.com/2iH2vQ2L
我的第一个帖子可以在这里找到:Converting a Youtube downloader form VB to C#
答案 0 :(得分:1)
看看我的YoutubeExtractor图书馆。它提供了从YouTube下载视频的方法。
答案 1 :(得分:0)
似乎Youtube阻止您访问该链接,这可能是因为您没有为user-agent
设置WebClient
。
尝试在尝试下载视频之前尝试添加此内容。
wc.Headers.Add ("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
url cleanup的代码也需要像这样改变。
//clean up residual tags and encoded strings
link = slink.Replace("url=", "");
link = link.Replace("\\u0026", "&");
link = HttpUtility.UrlDecode(link);