© Design by www.123Freevectors.com
Чтобы добавить видео к любой статье в системе, его нужно загрузить или найти на YouTube, Vimeo или RuTube и затем скопировать ссылку.
Как скопировать ссылку на видео на YouTube
1. Зайдите на YouTube.
2. Найдите необходимое видео и откройте его.
3. Выберите один из двух способов копировать ссылку:
— нажмите правой кнопкой мыши на самом видео и затем выберите «Копировать URL видео»;
— сразу под видео с правой стороны нажмите «Поделиться» и затем нажмите «Копировать».
Как скопировать ссылку на видео на Vimeo
2. Найдите необходимое видео и откройте его.
3. Нажмите кнопку «Share» (бумажный самолетик) справа на самом видео или сразу под видео.
4. В появившемся окне скопируйте ссылку из поля «Link».
Как скопировать ссылку на видео на RuTube
2. Найдите необходимое видео и откройте его.
3. Выберите один из двух способов копировать ссылку:
— нажмите на единственный значок в правом верхнем углу видео, затем нажмите «Ссылка» и ссылка скопируется автоматически;
— либо нажмите «Поделиться» под видео, выделите появившуюся ссылку и скопируйте ее.
Что теперь делать с этой ссылкой?
Добавить видео к любой вашей статье.
Как добавить видео к статье?
1. В редакторе статей нажмите синий плюс слева от текстовой строки (если не видите его, нажмите Enter на клавиатуре, чтобы перейти к новой строке — он появится).
3. Вставьте скопированную ссылку и нажмите Enter.
Wix.com
Wix.com — это не просто конструктор сайтов, а ведущая облачная платформа с миллионами пользователей по всему миру. С нами вы сможете легко создать красивый сайт самостоятельно.
Развивайте бизнес, демонстрируйте работы, продавайте товары или пробуйте новые идеи. С конструктором сайтов Wix вы убедитесь, что создание сайта — это увлекательно, удобно и бесплатно.
© Wix.com, Inc., 2006–2023
Главная » Цифровой мир и разработка » Как скачать с Vimeo видео защищенное по домену
Как скачать с Vimeo видео защищенное по домену
Всем привет, если есть необходимость скачать закрытое видео с видеохостинга Vimeo, защищенное по домену, то это можно сделать при условии, что у Вас есть ссылка на сайт реферер. Referer в данном случае — это тот домен, на котором можно просматривать данное видео и соответственно в коде iframe вы сможете найти ссылки на его скачивание, при чем в коде будет несколько ссылок, по одной на каждое качество видео.
Однако, если у Вас нет доступа к странице, где осуществляется просмотр видео, то данное видео Вы не сможете ни посмотреть, ни скачать, т.к. открыв его по ссылке на сайте vimeo, вы увидите ошибку «Частное видео» или «Private video».
Для того, чтобы подобное видео открылось по ссылке типа https://player.vimeo.com/video/9999999999, нужно обязательно знать ссылку на домен, с которого осуществляется переход, если такой ссылки у Вас нет, то видео получить Вы никаким образом не сможете!
Если есть ссылка на домен, то все достаточно просто:
- Для открываемой страницы нужно подменить заголовок referer, сделать это можно разными способами, но я напишу самый простой. В браузере Google Chrome в адресную строку вставляем chrome://apps и переходим в интернет-магазин Chrome, ищем и устанавливаем расширение Referer Control.
- После активации расширения идем в его настройки, находим строку текста «site filter», в поле «enter site» вставляем ссылку на видеохостинг vimeo (пример выше по тексту), в разделе «referer settings» выбираем вкладку «Custom», появится еще одно поле ниже и туда вставляем ссылку на домен типа https://your-domen.com.
- Пробуем зайти по ссылке на сайт vimeo, которая теперь должна открываться, чтобы скачать видео остается только найти нужный url в коде страницы.

115 комментариев
-
Не сразу понял какой домен «типа https://your-domen.com» имеется ввиду. Это адрес страницы, откуда вы берете плеер. Если не работает на этапе замены в расширении Referer Control, попробуйте изменить в ссылках http на https и обратно, мне помогло.
Спасибо автору за инструкцию! -
У меня не получилось помогите я всё сделал и что дальше
-
Отлично, спасибо
-
Офигеть! Я чуть не … когда это сработало! Столько всякого говна в интернете прочитал, всяких говно-советов, что уже не надеялся. Это просто чудо! Ты гений!
-
Спасибо большое! Сначала не поняла что делать после добавления двух ссылок, а потом почитала клмменты, зашла в ДаунЛоад — и он начал качать то, что нужно!!!
-
Спасибо. Всё получилось. Удалось с помощью связки плагинов Referer Control и Simple Vimeo Downloader скачать запароленные видеокурсы. В плагине указывал фильтр https://player.vimeo.com/* и рефер на сайт с курсами.
-
А Referer Control тут при чем тогда? У меня вообще ничего не получается 🙁
-
Спасибо, дорогой друг, за подсказку использовать связку плагинов!
-
-
Благодарю! всё получилось 🙂
-
Офигеть, где Вы были раньше))) Огромное спасибо!!! Я неделю ломал голову, столько перечитал источников и все никак. А тут с первого раза получилось. Огромное спасибо!!! ))
-
Братан а где взять ссылку от домена. Просто в вк прислали ссылку по типу https://player.vimeo.com/video/9999. И очень надо видео скачать а там только само видео без всяких других кнопок.
-
-
Спасибо! Все работает!
Referer Control + Vimeo Downloader
Видео не успеваем посмотреть а оно важное, вот и искали способ.
Теперь в свободное время все посмотрим-
Благодарю, получилось по вашему способу!
-
-
Ура! Получилось с Referer Control + Vimeo Downloader. Нужно было скачать запароленные видео с онлайн платформы с курсом, который оплатила и хочется сохранить на компьютере.
На другом сайте был совет про программу Any Video Converter, но она не справилась.
Огромное спасибо за вашу статью! Действительно помогло. -
Огромная Благодарность! Все прекрасно работает!
-
Автор ты бог!
Спасибо тебе огромное!!!
Для всех у кого не получается объясняю, у меня тоже не получалось по описанию автора, но получилось значительно проще, делается супер просто без танцев с бубнами.
Устанавливаете в хроме расширение Simple Vimeo Downloader, далее открываете видео на сайте на котором оно залито https://vimeo.com/.
Далее кликаете на значёк установленного расширения в браузере правом верхнем углу Simple Vimeo Downloader, он тут же предложит разрешение в котором можно скачать видос, я выбрал максимальное 1080p with 29 fps.mp4-
ОГРОМНОЕ спасибо и всех благ!!!
-
Спасибо огромное!
-
Ваш способ работает! Всех благ Вам и автору сайта!
-
Отлично! То, что надо! Работает! Спасибо!!!
-
Спасибо!!
-
Боже , спасибо Вам!!!
-
Огромное спасибо!!!
-
Боже, это гениально! Спасибо, Сергей!
-
СПАСИБО!!! Вот это помогло!
-
у меня звука нет в видео вообще при скачивании
-
-
Спасибо большое! Уже кучу сайтов перерыла — только Ваш способ помог)
-
Спасибо, тандем Referer Control + Simple Vimeo Downloader работает идеально!
-
Идеально. Спасибо огромное!
-
Спасибо за инструкцию, все получилось в Google Chrome,
после настройки адреса скачал с помощью плагина Simple Vimeo Downloader -
Вроде понятная инструкция, есть ссылка, но не получается(
-
Спасибо большое, очень помогли)
-
Огромное спасибо автору! Получилось!
-
Большое спасибо автору и комментаторам за предоставленную информацию! Храни вас Господь!
-
Если у вас получилось запустить видео с помощью «Referer Control» — то дальше просто установите расширение «Simple Vimeo Downloader» — и уже оно позволит скачать данное видео в любом качестве!
-
Благодарю! Очень помог!
-
Здравствуйте, что делать, если видео не запускается?
-
Спасибо, очень выручил!!!
-
-
В моем случае ссылка на скачивание была в теге фрейма. Расширение в итоге не понадобилось. Но хорошо, что оно работает
-
А для ютуба что-то работающее подскажете? Тоже для защищенного от скачивания видео. Спасибо!!
-
Добрый день.
А где найти этот url для скачивания? -
Video Downloader for Vimeo — вот хороший плагин для браузера, который скачивает закрытые видео
-
Спасибо, выручил!!!!
-
Прям низкий поклон!!!
-
Прям красавчик) РЕСПЕКТ!!!
-
Да, то же работает
-
Cпасибо! Наконец получилось! А то я замучилась искать какие-то непонятные коды и домены
-
-
Спасибо огромное, автор, всё удалось! Всех благ тебе!
-
Привет всем. Классная инструкция. Мне очень нужна помощь. Также проделала всю инструкцию. Но видео скачать не дает.
Та же ситуация: То есть видео открыл, проигрывает, но скачать не дает.
Все сделала, как написано в статье. Поставила адрес видео, рефер.
Использую расширение для chrome «Скачать видео с Vimeo». По щелчку на значок «скачать» пишет: «Недоступно согласно параметрам конфиденциальности». В чем может быть проблема?
Подскажите пожалуйста как найти прямую ссылку на видео, просто хочу научится это делать. Буду мега благодарна. -
Огромное спасибо!!! Все работает как надо
-
В конце ищите ссылки на разные разрешения видео: 1080, 720…
Ее копируете и вставляете в адрессную строку.
Далее — Download! :):):)-
А у меня почему-то не скачивает. То есть видео открыл, проигрывает, но скачать не дает.
Все сделала, как написано в статье. Поставила адрес видео, рефер.
Использую расширение для chrome «Скачать видео с Vimeo». По щелчку на значок «скачать» пишет: «Недоступно согласно параметрам конфиденциальности». В чем может быть проблема?-
Ещё актуально? Дайте ссылки на видео, на рефер, я сброшу путь на итоговое видео.
-
Привет раньше все отлично получалось сейчас пишут при наличии ссылки на видео доступ закрыт из-за конфедициальности
-
Добрый день!
такая же проблема «Приносим извинения
Данное видео запрещено к просмотру согласно его параметрам конфиденциальности.»
объясните, пожалуйста, как скачать
-
-
-
-
Супер! Спасибо! Все работает!
-
Спасибо большое!!
-
Чудо! Спасибо огромное!)))
-
Не получается скачать видео:
https://player.vimeo.com/video/396412586
пишет: «Приносим извинения
Данное видео запрещено к просмотру согласно его параметрам конфиденциальности.»
Кто может помочь?-
Тоже с этим столкнулись
-
-
Здравствуйте! у меня не получается!
Выходит сообщение «Приносим извинения. Данное видео запрещено к просмотру согласно его параметрам конфиденциальности».
Я пытаюсь скачать с сайта -
Или так: yotube-dl —referer «https://your_domen.com/» «ссылка_на_видео»
-
Респект. Все работает. Локально скачивается, по совету выше, расширением для браузера «Google Chrome» «Video Downloader professional»
-
Дядя, я сутки сидел и не мог найти решение.
Это крутой способ, всё получилось. Спасибо. -
Офигеть ,все так просто ! Спасибо огромное ,а то уже час танцы с бубном чтобы скачать защищенное видео.
-
-
Спасибо добрый человек! Все легко и просто получилось! я счастлива!
-
Огромное спасибо!!!!!!!!!!!!!!!
-
Благодарю вас, Андрей. Несколько часов танцев с бубнами позади. Пока ваш комментарий не попался.
-
Вот это мне и помогло!)))
спасибо, добрый человек коуч Андрей)) -
Огромное спасибо!!! Задолбали танцы с бубном. Ваш способ наипростейший!!!
-
почитайте внимаиельно! ваше приложение не скачивает ЗАЩИЩЕННЫЕ видео!
-
да, чудесное дополнение, берет даже видео с настройками приватности, мерси)
-
Андрей. Сегодня попробовал дополнение по вашему совету. Спасибо. Работает отлично!!!
-
Ура спасибо!! Все получилось!
-
Спасибо большое, Андрей! Ваш способ самый действенный!
-
Спасибо, Андрей. Пару часов танцев с бубнами, пока ваш комментарий не попался. И все оказалось легко и просто!
-
спасибо
-
Андрей, спасибо за совет!!!!! мучалась же
-
спасибо!
-
Спасибо большое! получилось !!
-
Вау! Круто! Благодарю))
-
Благодарю, светлая душа!
-
Чел тебе памятник нужно поставить за такой полезный коммент : )) Какой у тебя емейл? Отблагодарю копейкой
-
Благодарю!!!!! Проще не бывает!
-
Замечательно! Смогу просматривать вебинары даже после окончания онлайн-курсов. Спасибо!
-
АААААА, чувак, СПАСИБО!!!! Я перелопатил кучу сайтов, видео, расширений, но ничего не помогало, а тут ты. Установил расширение и на сайте с платными уроками (конечно предварительно авторизовавшись на нем) появились заветные кнопочки скачать!
-
Не удалось найти заброшенный URL (( как же в это не обойтись защиту: политика конфиденциальности которая по ссылке высвечивается. (( может, есть еще способы? (
-
-
-
Ой! это я не ту ссылку взяла. надо было не из кода фрейма, а из кода страницы. в общем, у меня тоже все получилось!
-
-
Супер! Спасибо! сначала не получилось, наверное, некоторые ту же ошибку делали — когда копируете ссылку из кода страницы, копируйте от кавычек и до кавычек! Потому что в середине ссылки там есть .mp4 и я заканчивала именно на этом и ничего не открывалось, потом заметила, свою оплошность, ссылка идет дальше! копируйте дальще до кавычки — все что между кавычками, так просто но mp4 сбило меня с толку!
-
Супер, спасибо большое за подробную инструкцию, всё получилось, я довольна!)
-
я затем с вычисленного урл качал через Any Video Converter или можно просто послать урл кому надо
-
Олег, подскажите пожалуйста , после того, как я скопировала в поле ссылку на домен, что нужно сделать? где брать рабочую ссылку переделанную? не могу разобраться((
-
-
Спасибо большое автору, совет реально рабочий
-
Действительно работает )) спасибо большое !
-
Всё равно пишет:
«Приносим извинения
Данное видео запрещено к просмотру согласно его параметрам конфиденциальности.»-
У меня такая же фигня
-
-
Ура !!! Получилось!!!!!!!!!!!!!!
-
Роман, здравствуйте! Подскажите, пожалуйста, где взять ссылку на домен? Я всё сделала до: «Custom», появится еще одно поле ниже и туда вставляем ссылку на домен типа https://your-domen.com» А дальше не поняла что делать.
-
Огромная благодарность, Роман, +1000 Вам в карму!))) Разобралась и всё получилось, уррра!!! Кстати, для скачивания, кроме того, что Вы рассказали, ещё очень помогло расширение для браузера «Google Chrome» «Video Downloader professional», это именно для 2019 года (ru.savefrom.net мне после всего проделанного так и не смог помочь). Существует несколько плагинов с одинаковым названием «Video Downloader professional». Нужно скачать именно где написано: «Источник: https://videodownloader.io», поскольку остальные не обладают должной функциональностью. Просто скачивают видео, но не умеют скачивать приватные видео с vimeo.com Я тут скачала: https://chrome.google.com/webstore/detail/video-downloader-professi/jpaglkhbmbmhlnpnehlffkgaaapoicnk может, кому пригодится тоже 🙂
-
-
Спасибо за способ. Благодаря способу и советам Сергио даже я, девочка, которая только знает где кнопка включения компьютера, разобралась и скачала видео :)))
-
Спасибо, дружище!
-
Спасибо.
-
Огромное спасибо.
Сам бы не догадался, способ рабочий при наличии внимания) -
Спасибо, реально скачал с помощью этого плагина все что было нужно. Очень помог.
Я думаю стоит дополнить инструкцию для людей не особо разбирающихся, как найти там ссылки именно на видео, когда уже все сделали в плагине, и сайт с закрытым видео открылся по ссылке на vimeo (типа https://player.vimeo.com/video/1231234124)
Делаем поиск на странице кода по фразе «mp4» , и там видим данное видео во всех возможных размерах(1080,720,540,360) Выбираем нужное качество и качаем.
Ссылка начинается и заканчивается кавычками (копируем без кавычек).
У меня начало ссылки было такое:
«https://fpdl.vimeocdn.com/………………………………………97b0a69e5e377f89eb»
Конец бывал просто из случайных символов(как в примере выше), а бывало оканчивался на .mp4″
Автору спасибо, всем остальным настойчивости и терпения.-
-
Спасибо за помощь
-
Уважаемый! Как Вы скачали уже конечную ссылку? Уже через все пробовал, без вариантов вообще(((
-
У меня также, видео в браузере открылось, но скачать его ничем не получается.
-
Попробуй найти ПОДЕЛИТЬСЯ.
И через это отправь себе на почту.
-
-
-
Спасибо тебе огромное за дополнение, всё удалось!
-
-
остается только найти нужный url в коде страницы.
которого нет!-
А вы глаза разуйте и код разберите подробно, если у вас нет ссылки, то и видео играть не будет.
-
Оставить комментарий
9 ответов
Проведя несколько часов, узнав, как я могу получить прямую ссылку на vimeo, я нашел хорошее решение. Итак, вот шаги для пользователей, которые хотят скачать и потоковое видео src непосредственно из vimeo. Имейте в виду, что они блокируют все IP-адреса и, возможно, узлы, которые загружают видео таким образом, поэтому я просто прекратил использовать их службы, и я больше никогда их не буду использовать:).
Шаги для получения источников видео:
- выберите ссылку
http://vimeo.com/video_id - получить только
video_id - получить xml для видео
http://vimeo.com/moogaloop/load/clip:video_id; -
проанализируйте xml, и я найду необходимую информацию:
-
request_signature -
request_signature_expires -
isHD
-
-
Затем я создаю ссылку:
$video_link = "http://vimeo.com/moogaloop/play/clip:".$video_id."/".$request_signature."/".$request_signature_expires."/?q=".$quality.""; -
Затем, если вы php dev, вы вызываете команду wget через exec таким образом
exec("wget -b '$video_link' -a 'wget.log' -O -"); -
Затем вы читаете журнал и узнаете, какую ссылку вы ищете. Вы можете просто проанализировать файл журнала. Прямая ссылка находится между «Расположение:» и «[далее]»
-
Вы возвращаете прямую ссылку и очищаете файл журнала:)
ПРИМЕЧАНИЕ. Помните, что это не будет работать вечно. Рано или поздно они заблокируют ваш ip:).
pocko
20 дек. 2010, в 22:16
Поделиться
Предупреждение Описанные выше методы не поддерживаются Vimeo. Нет никакой гарантии, что они работают прямо сейчас или будут продолжать работать в будущем. Они могут (и, вероятно, будут) разорваться в любой момент без предварительного уведомления.
Единственный официально поддерживаемый способ доступа к URL-адресам видеофайлов — через API.
Если вы пытаетесь получить доступ к URL-адресам принадлежащих вам видео, у вас должна быть учетная запись PRO.
Если вы пытаетесь получить доступ к URL-адресам видео, которые у вас нет, вы должны встроить видео или открыть его с помощью приложения Vimeo iOS.
Dashron
03 дек. 2014, в 17:37
Поделиться
Этот javascript работает для меня.
var player = document.getElementsByClassName("player")[0].getAttribute("id");
player = eval(player.replace("player_", "clip"));
var time = player.config.request.timestamp;
var sig = player.config.request.signature;
var clip_id = window.location.href.substring(17);
var url = "http://player.vimeo.com/play_redirect" +
"?clip_id=" + clip_id +
"&sig=" + sig +
"&time=" + time;
var v = document.getElementById("menu");
v.style.fontSize = "4em";
v.style.lineHeight = "1em";
v.innerHTML =
"<a href='" + url + "'>SD</a>, " +
"<a href='" + url + "&quality=hd'>HD</a>";
источник
Steven Penny
22 дек. 2012, в 04:04
Поделиться
Нет необходимости в каких-либо скриптах, не говоря уже о PHP.
Я хотел загрузить защищенное видео (встроенное на конкретный веб-сайт), что даже на vimeo.com невозможно воспроизвести из-за «настроек конфиденциальности».
Просто запускайте инструменты разработчика (Opera Dragonfly, инструменты разработчика Chrome, независимо от того), выберите «Сеть», и вы идете:
http://pdl.vimeocdn.com/23062/181/302074466.mp4?token2=1424299768_bbeb6039c037cd429cd560d668ec851e&aksessionid=1f4d289cd1a3abe1
Метод: Получить
Текст состояния: 206 Частичный контент
Тип: видео /mp 4
Просто скопируйте этот первый URL-адрес и загрузите с помощью некоторого инструмента (я использовал «wget» ).
Сохраненный.
nemozny
18 фев. 2015, в 23:27
Поделиться
FYI, приведенный выше пример не будет работать, но он близок. Вам нужно отправить поддельные куки. Таким образом, в основном, когда вы посещаете страницу с помощью XML, вам необходимо захватить файлы cookie, а затем отправить эти файлы cookie, которые вы ранее получили, посетив окончательный URL-адрес видео. Итак, как вы это делаете в PHP (используя Yii) с curl:
public function actionVimeo($video_id)
{
$xml_url = "http://vimeo.com/moogaloop/load/clip:$video_id";
$ch = curl_init($xml_url);
$cookieFile = Yii::app()->basePath . '/runtime/vimeocookie'. time().'.txt'; //replace this line with code to generate a writeable path in your application
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieFile); //the cookie file will be populated with cookies received while viewing the xml page
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); //you need to send a user agent here and it must be the same below when you visit the video url
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$output = curl_exec($ch);
curl_close($ch);
$xml = simplexml_load_string($output);
$request_signature = $xml->request_signature;
$request_signature_expires = $xml->request_signature_expires;
$vid_url = "http://vimeo.com/moogaloop/play/clip:".$video_id."/".$request_signature."/".$request_signature_expires."/?q=sd";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$vid_url);
curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); //same user agent as on previous vimeo page you visited
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookieFile); //the cookies in that cookie file will be used while visiting the video URL
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); //vimeo changes the header location, so you gotta follow it
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$video = curl_exec($ch);
curl_close($ch);
unlink($cookieFile); //remove the temporary cookie file
$savePath = Yii::app()->basePath . '/runtime/testvim.mp4'; //change this to a path your application can write the final video to
file_put_contents($savePath, $video);
exit;
}
faceyspacey.com
23 май 2011, в 07:58
Поделиться
Ответы для этого на SuperUser были устаревшими, поэтому я думал, что отправлю его здесь (недостаточно репутации для публикации там)
Итак, я только что записал XHR-запросы с помощью Chrome devtools, и первый запрос был для json файла, содержащего ссылку на видео в формате akamai CDN, наряду с маркером akamai. Этот токен важен. Это хэш, который включает временную метку, поэтому ссылки для видео здесь должны быть загружены несколько быстро или запросы будут отклонены.
Формат для этого файла JSON был в форме:
https://player.vimeo.com/video/VIDEO_ID/config?byline=0&collections=1&context=Vimeo%5CController%5CClipController.main&default_to_hd=1&outro=nothing&portrait=0&share=1&title=0&watch_trailer=0&s=6cffff97fffffffffff4ffffffff679ec66ffff_14ffffffff
И тогда я просто искал объект самого высокого качества в JSON (1080p) и загрузил этот файл. В формате:
https://fpdl.vimeocdn.com/vimeo-prod-skyfire-std-us/01/XXXXX/8/XXXX/XXXXXXXX.mp4?token=XXXXXXX-0xXXXXXXXXXXXXX
Обратите внимание, что Xs — это номера, которые я заменил для конфиденциальности.
Brad Barrows
27 май 2017, в 00:00
Поделиться
Алгоритм выглядит следующим образом:
- Входные данные: vimeoUrl.
- content = getRemoteContent (vimeoUrl).
- Разбор содержимого для поиска и извлечения значения из data-config-url
атрибут. - Перейдите в data-config-url и загрузите контент как объект JSON:
$ video = json_decode ($ this- > getRemoteContent ($ video- > getAttribute (‘data-config-url’))); - Вернуть $video- > request- > files- > h264- > sd- > url — это вернет
прямая ссылка для видео качества SD.
Вот мой простой класс, который работает на этот момент:
class VideoController
{
/**
* @var array Vimeo video quality priority
*/
public $vimeoQualityPrioritet = array('sd', 'hd', 'mobile');
/**
* @var string Vimeo video codec priority
*/
public $vimeoVideoCodec = 'h264';
/**
* Get direct URL to Vimeo video file
*
* @param string $url to video on Vimeo
* @return string file URL
*/
public function getVimeoDirectUrl($url)
{
$result = '';
$videoInfo = $this->getVimeoVideoInfo($url);
if ($videoInfo && $videoObject = $this->getVimeoQualityVideo($videoInfo->request->files))
{
$result = $videoObject->url;
}
return $result;
}
/**
* Get Vimeo video info
*
* @param string $url to video on Vimeo
* @return stdClass|null result
*/
public function getVimeoVideoInfo($url)
{
$videoInfo = null;
$page = $this->getRemoteContent($url);
$dom = new DOMDocument("1.0", "utf-8");
libxml_use_internal_errors(true);
$dom->loadHTML('<?xml version="1.0" encoding="UTF-8"?>' . "n" . $page);
$xPath = new DOMXpath($dom);
$video = $xPath->query('//div[@data-config-url]');
if ($video)
{
$videoObj = json_decode($this->getRemoteContent($video->item(0)->getAttribute('data-config-url')));
if (!property_exists($videoObj, 'message'))
{
$videoInfo = $videoObj;
}
}
return $videoInfo;
}
/**
* Get vimeo video object
*
* @param stdClass $files object of Vimeo files
* @return stdClass Video file object
*/
public function getVimeoQualityVideo($files)
{
$video = null;
if (!property_exists($files, $this->vimeoVideoCodec) && count($files->codecs))
{
$this->vimeoVideoCodec = array_shift($files->codecs);
}
$codecFiles = $files->{$this->vimeoVideoCodec};
foreach ($this->vimeoQualityPrioritet as $quality)
{
if (property_exists($codecFiles, $quality))
{
$video = $codecFiles->{$quality};
break;
}
}
if (!$video)
{
foreach (get_object_vars($codecFiles) as $file)
{
$video = $file;
break;
}
}
return $video;
}
/**
* Get remote content by URL
*
* @param string $url remote page URL
* @return string result content
*/
public function getRemoteContent($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_MAXREDIRS, 10);
curl_setopt($ch, CURLOPT_USERAGENT, 'spider');
$content = curl_exec($ch);
curl_close($ch);
return $content;
}
}
Использование:
$video = new VideoController;
var_dump($video->getVimeoDirectUrl('http://vimeo.com/90747156'));
Alexander Yarovoy
16 апр. 2014, в 13:27
Поделиться
Быстрый и грязный подход:
$base = 'http://player.vimeo.com/play_redirect';
$curl = curl_init(sprintf('http://player.vimeo.com/video/%s', $_GET['id']));
curl_setopt_array($curl, array(
CURLOPT_USERAGENT => $_SERVER['HTTP_USER_AGENT'],
CURLOPT_RETURNTRANSFER => true
));
preg_match('/g:({.*?}),a/s', curl_exec($curl), $match);
curl_close($curl);
$json = json_decode($match[1])->request;
$url = sprintf('%s?quality=sd&clip_id=%s&time=%d&sig=%s',
$base,
$_GET['id'],
$json->timestamp,
$json->signature
);
$curl = curl_init($url);
curl_setopt_array($curl, array(
CURLOPT_HEADER => true,
CURLOPT_NOBODY => true,
CURLOPT_USERAGENT => $_SERVER['HTTP_USER_AGENT'],
CURLOPT_RETURNTRANSFER => true
));
$headers = explode("rn", curl_exec($curl));
curl_close($curl);
foreach ($headers as $header) {
if ($header) {
header($header);
}
}
k3min
24 июнь 2013, в 13:56
Поделиться
Ещё вопросы
- 1Какие библиотеки javascript или игровые движки для построения трехмерной комнаты с координатами x, y, z для отслеживания движущихся объектов?
- 0Использование баров из Google-графиков в качестве кнопок
- 1NetBeans не распознает импортированный класс
- 0Как реализовать манипуляции с изображениями в Jquery или ASP.Net?
- 0Один пользователь несколько адресов доставки, как сделать это по умолчанию
- 0GetElementsByClassName — Perl?
- 0Подавить часть конструктора по умолчанию?
- 1Есть ли какой-либо тип списка, который будет содержать информацию о пользователе во второй вкладке?
- 1__File__ из Pyinstaller EXE ссылается на файл .py
- 1Можно ли запустить приложение в среде «Метро» и в среде рабочего стола? — Windows 8 / 8.1
- 0Передача вектора в функцию
- 0Скрыть номер мобильного телефона от индексации в Google
- 0параметр по умолчанию ostream в функции шаблона
- 0Скрыть блоки, которые не соответствуют контейнеру фиксированного размера
- 0Использование функции в качестве параметра в контроллере
- 1Найти текущее использование процессора в Compact Framework? [Дубликат]
- 1Загрузка файлов с помощью ExtJS и Jersey
- 1Как добавить дополнительный исходный каталог для maven для использования только при выполнении тестов или при отладке?
- 1Как разделить список с «-» в качестве разделителя, при этом строка содержит «-»?
- 0Изменить функцию, чтобы использовать класс HTML вместо идентификатора
- 0как получить последнюю строку из таблицы 2, используя левое соединение MySQL
- 0установить фокус, нажав на элемент, но исключая некоторые дочерние элементы
- 1XamDataGrid — добавление столбцов во время выполнения
- 1Заполнение объекта вложенного списка модели на основе выбора флажков в ASP.NET MVC
- 0Значения привязки PDO не работают [дубликаты]
- 1Интерфейс наследования интерфейса
- 0Возникли проблемы с ориентацией на селектор (или что-то)
- 1Что эквивалентно jasmine.createSpy (). And.callFake (fn) в sinonjs
- 1Регулярное выражение Javascript допускает только один знак плюс (+) в начале, а длина строки не должна превышать 15 символов
- 1Кажется, Virtualenv не может найти Flask «Не удалось найти версию, которая удовлетворяет требованию»
- 1Как сгруппировать по дате с пандами?
- 1Не в состоянии использовать Nullable DbGeography
- 0aws mysql проблема с соединением для сайта azure
- 0Средневзвешенное значение по порядку в углах
- 0Как получить время 2 часа от текущего времени в IONIC
- 0Ionic / Angular App не читает данные JSON из API
- 0Как мы можем подчеркнуть n-ю букву в угловом ng-повторении?
- 0Угловой запрос http
- 1Удалить пробелы из первого и последнего символа в заголовках нескольких размеров
- 0Sum () возвращает неверное значение при объединении нескольких таблиц
- 1Привязка элемента в дочернем представлении к свойству родительского ViewModel
- 0отредактируйте htaccess, чтобы сделать его нечувствительным к регистру
- 0Отображение Dialong с эффектами в зависимости от выбора меню — jQuery UI
- 0угловой контроллер несколько раз
- 1Как проверить два объекта на разницу в значениях в JS?
- 1bs4 не может вызвать findchildren из-за NoneType
- 1Полиморфная рассылка примитивных типов в питоне?
- 0отрицательные расстояния с cv :: HoughLines?
- 0jQuery inArray не работает
- 1Как настроить откат на фреймворке Swift Mailer в php
Недавно проходил один полезный курс, в котором курс был в видео и текстовом формате. Видео были выложены на видео-хостинг Vimeo и закрыты от внешнего просмотра. В целом, довольно популярное решение. В какой-то момент, курс решили закрыть, как и доступ к нему. Это было не хорошо, потому что пообещали курс оставить навсегда, поэтому я и озадачился тем, чтобы скачать видео с Vimeo. Нашел его и публикую эксклюзивно на https://apps4.life
Ни один простой и логичный способ не подошел, чтобы скачать приватное видео. Я попробовал таки способы:
- Скачать вручную через Save As
- Скачать одним из сервисов, которыми пестрит интернет – не работает, просто не находит видео.
- Найти видео в коде страницы и уже его скачать. В коде ссылка на видео, которое не просматривается через ссылку, только через встроенный код на сайте.
Короче никак. Но я нашел способ, рассказываю.
1. Inspect страницы
Открой веб-страницу, на которой находится видео, которое хочешь скачать, в режиме инспектирования, когда вы можете просматривать CSS стили и многое другое.
Для этого — нажимаешь правой кнопкой мыши рядом с видео. И выбирай пункт, как на скриншоте – Inspect.
После этого включаешь то самое видео на на пару секунд. Это нужно, чтобы обновились HTML и CSS стили.
2. Переходим в network и ищем слово player
Это скриншот окна инспектирования, которое мы вызвали. По-умолчанию, активна вкладка Elements, перейди во вкладку Network и введи в поле слово player.
Таким образом мы отфильтровываем нужные нам файл(ы), если видео несколько.
3. Обновите веб-пейдж и нажмите на первую запись
После того как отфильтровали по слову player — просто обновить страницу. Можно через F5 или нажатием кнопки “обновить” в браузере.
В результате получим список вот таких записей с цифрами. У меня на скрине их 6 штук – это количество видео в одном документе на сайте. Если у вас 1 видео на странице, значит будет 1 запись из цифр. И будет она стоять выше всех. Потому будут идти еще какие-то записи, нас они не интересуют.
4. Сохранить файл как документ .txt.
Ведели запись из цифр и нажми на нее правой кнопкой мыши. И сохрани в формате .txt. Файл скачается на компьютер.
Иногда необходимо вручную добавить расширение .txt. Главное, чтобы потом можно было открыть “Блокнотом” или другим просмотрщиком текстовых документов.
Для Виндовс:
Для Мака:
Сохраненный файл будет называться примерно так: 393999309.txt или 462921153.txt.
5. Скопируй ссылку .mp4
Открываешь сохраненный чкачанный файл любым текстовым редактором.
И ищете запись “.mp4“. Именно так, без кавычек, но с точкой — .mp4
Находите сразу несколько совпадений. Если присмотреться, то там будут ссылки на разные разрешение видео-файла, нам нужно будет самое большое, в разрешении 720.
Пример смотрите на скриншоте:
Подчеркнул различные разрешения в файле. Нас интересует самое высокое 720p.
Ссылка на скачивание видео с вимео, на скриншоте я тоже выделил, начало и конец отметил стрелками. Обратите внимание, что в ссылке 2 раза участвует искомое сочетание .mp4.
Всю эту запись копируете в буфер, открываете новое окно бразера, вставялете ссылку и нажимаете Энтер.
Видео откроется и начнет воспроизводится.
6. Сохраните видео с вимео
Осталось видео сохранить.
Для этого, просто нажимаем на него правой кнопкой мыши и выбираете сохранить как.
Не обращайте внимание, что на скрине Гугл, это действительно видео так начинается :).
На этом все. Дети, на этом уроке мы узнали, как легко и непринужденно скачивать закрытое видео с Vimeo.
Если было полезно — поделись с друзьями и поблагодари в комментариях). Будут вопросы – туда же.
Буду блaгoдарeн, если нaжмeтe нa любую pekламу на сайте 🙂
Привіт! Я засновник проєкту Apps4Life. Все починалося як хобі, та перетворилося на великий корисний проєкт, що допомагає людям познайомитися з цифровим світом мобільних ігор, додатків, вебсервісів та криптоіндустрії.










