@Slanty

Как скачать видео по прямой ссылке?

Пытаюсь скачивать видео с ютуба, для скачки использую сайт https://220youtube.com
Для скачивания видео через этот сайт, можно использовать такую ссылку:
https://220youtube.com/индентификатор видео?x=22

Подскажите пожалуйста, как сделать чтобы программа скачивала всё видео
Есть код:
import requests #импортируем модуль
url_vidos = input("Enter the Youtube-url\n") # получаем ссылку на видео
f=open(r'file.mp4',"wb") #открываем файл для записи, в режиме wb
ufr = requests.get('https://220youtube.com/'+str(url_vidos[:7])+'?x=22') #делаем запрос
f.write(ufr.content) #записываем содержимое в файл
f.close()

Почему-то скачивается не весь ролик, а только маленькая часть
  • Вопрос задан
  • 5896 просмотров
Решения вопроса 2
adugin
@adugin Куратор тега Python
Потому что на YouTube так организовано хранение и передача видео. И вам придётся скачивать фрагменты и затем соединять их в целое видео. Можете начать знакомиться с теорией, например, с этих статей: MPEG-DASH и HLS.
Ответ написан
deepblack
@deepblack Куратор тега Python
Если неохота заморачиваться с тем, как это реализовать ручками, то
используя youtube-dl
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
А все зависит от формата видео. Оно может быть в формате hls, тогда само видео изначально разбито на маленькие кусочки. Тогда нужно скачать индексный файл в формате m8u , где указаны все видеофрагменты.
Ответ написан
Комментировать
Так это же легко! добавь атрибут stream=True в request.get.

Вот так :
ufr = request.get(url, stream=True)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы