Короткая версия: С помощью системы Youtube, если вы не нажмете эту кнопку «играть» (начать воспроизведение) есть видео не служил. Загрузка страницы через браузер также является формой запуска воспроизведения. Однако использование webshot
не отвечает требованиям сервера Youtube, поэтому он не будет работать.
длинная версия:
Как я могу сделать скриншот веб-сайта Flash-... Я попытался это, но я не могу видеть видеоизображение.
webshot('https://www.youtube.com/watch?v=YQHsXMglC9A', 'screentest.png')
Вы не можете скриншот содержание видеоплеер YouTube, как это. То, как работает Youtube, заключается в том, что, когда видео-страница готова, к другому файлу PHP можно получить доступ к видеосвязи (например: правильный файл для выбранных параметров качества и т. Д.). В основном вы должны выглядеть как браузер , делающий HTTP-запрос на свои серверы. Их сервер предоставляет временный токен для доступа к видеосвязи до истечения срока действия токена и т. Д. Есть и другие проблемы, такие как CORS. Эти вещи не выполняются вашим инструментом.
Если только Youtube использовал обычный <video tag>
с простой ссылкой MP4, тогда ваш код сработал бы.
Лучшее, что вы можете получить это, как показано ниже (см как нет контроля?) С помощью:
webshot('https://www.youtube.com/embed/YQHsXMglC9A', 'screentest.png')
![](https://i.stack.imgur.com/8w525.png)
Вы пробовали другой WebDriver браузер? Например. хром? –
Это не работает. Работает только PhantomJS. : / – Joozty