需要以编程方式截取YouTube视频的屏幕截图

时间:2016-01-18 22:31:14

标签: c# .net screenshot

我需要以编程方式从各种来源(不仅仅是YouTube)拍摄嵌入视频的图像。 因此,如果您转到this嵌入视频。

我需要在开始之前拍摄嵌入式视频的照片,在前面提到的链接中排列的是两辆GT-R汽车。

string source = "https://www.youtube.com/embed/_Lc3GJ2O5ic"; 

System.Windows.Forms.WebBrowser wb = new System.Windows.Forms.WebBrowser(); 

wb.AllowNavigation = true; wb.Navigate(source);

wb.Navigate(source);

b.DocumentCompleted += new System.Windows.Forms.WebBrowserDocumentCompletedEventHandler(wb_DocumentCompleted);

private void wb_DocumentCompleted(object sender, System.Windows.Forms.WebBrowserDocumentCompletedEventArgs e)
        {
            System.Windows.Forms.WebBrowser wb = sender as System.Windows.Forms.WebBrowser;
            Bitmap bitmap = new Bitmap(640, 480);
            wb.DrawToBitmap(bitmap, new Rectangle(0, 0, wb.Width, wb.Height));
            wb.Dispose();

            string filepath = "C:\\Users\\myUserName\\Desktop\New folder\\gtr.bmp";
            bitmap.Save(filepath);

        }

但是当我进入图片时,我得到的只是一个黑盒子:

enter image description here

1 个答案:

答案 0 :(得分:0)

我很抱歉地通知你..但是你可能对这个态度采用了错误的态度

按照以下步骤操作:

  1. 打开Chrome浏览器
  2. 启用开发工具(F12)
  3. 加载givven网址
  4. 观察网络流量
  5. 您会看到该视频的预览已经是" webp"图像准备好使用....

    enter image description here

    我认为只是下载预览图片而不是尝试播放视频并制作屏幕截图是更好的方法....我缺少什么?

    更新

    对于每个视频 - 您只需下载文件(以编程方式)即可。 例如:附加的视频的预览图片位于https://i.ytimg.com/vi_webp/_Lc3GJ2O5ic/maxresdefault.webp

    通过chrome进行的检查澄清了如何重复不同提供商的流程,以便更好地了解我作为开发人员的工作