Я хочу настроить сценарий, который использует wget
для загрузки видео с канала на YouTube они каждый день загружают, таким образом, я хочу wget
загружать недавно загруженное видео без меня имеющий необходимость пойти на YouTube для получения URL видео. Как я мог достигнуть этого? Если wget
не может сделать этого, есть ли какое-либо другое программное обеспечение командной строки, которое может?
Уже существует сценарий для этого: youtube-dl
может загрузить видео с youtube.com или других видеоплатформ.
Программа предоставлена через репозитории и может быть установлена оттуда, однако поскольку YouTube часто изменяет вещи, и программа получает продолжающиеся обновления в этом особом случае, я рекомендую установить последнюю версию от GitHub с этими командами вместо этого:
sudo apt remove youtube-dl # uninstall the repo version
sudo wget https://yt-dl.org/latest/youtube-dl -O /usr/local/bin/youtube-dl # download
sudo chmod a+x /usr/local/bin/youtube-dl # make it executable
hash -r # hash
При установке программы таким образом, Вы можете обновить ее использование:
sudo youtube-dl -U
Вот некоторые видео опции выбора, которые могли быть полезны для Вас:
--playlist-start NUMBER
Playlist video to start at (default is 1)
--playlist-end NUMBER
Playlist video to end at (default is last)
--date DATE
Download only videos uploaded in this date
--dateafter DATE
Download only videos uploaded on or after this date (i.e. inclusive)
Загрузите сегодняшние видео включая резюме о частично загруженных файлах:
youtube-dl --date now -- 'PLFs4vir_WsTyXrrpFstD64Qj95vpy-yo1'
для www.youtube.com/watch?list=PLFs4vir_WsTyXrrpFstD64Qj95vpy-yo1, в то время как полная ссылка также работает
Загрузите все видео с прошлых семи дней с помощью списка URL в file
:
youtube-dl --dateafter now-7days -a file
Загрузите все видео с прошлого месяца с помощью списка URL в file
, но не затрагивайте, любой уже загрузил видео, расположенные в каталоге:
youtube-dl --dateafter now-1month -a file -w
Посмотрите man youtube-dl
для намного больше.