약 10,000개의 동영상으로 구성된 전체 YouTube 채널을 다운로드하고 있습니다. 때때로 "콘텐츠가 너무 짧습니다" 또는 "연결이 중단되었습니다"와 같은 오류로 인해 다운로드가 중지됩니다. 그런데 자동으로 다운로드를 다시 시작하는 방법이 있나요? 만들 수 있는 배치 파일이 있을 수 있지만 만드는 방법을 모르겠습니다.
다운로드하는 데 사용하는 명령은 다음과 같습니다.
youtube-dl -f bestvideo+bestaudio ytuser:(Channel) -o "/Videos/lhs/[%(upload_date)s - %(id)s] %(title)s.%(ext)s" --ffmpeg-location %CD%\ffmpeg\bin
답변1
이 답변은 이전 버전의 youtube-dl에서는 작동하지 않습니다. youtube-dl을 최신 버전으로 업데이트해야 합니다. 시스템에 Python이 설치되어 있는 경우 Python 가상 환경 내에 로컬로 최신 버전의 youtube-dl을 설치하거나 최신 버전의 youtube-dl을 다운로드하여 전역적으로 설치할 수 있습니다.
Ubuntu 14.04 이상에서는 youtube-dl도 스냅 패키지입니다. 설치하려면 다음을 입력하세요.
sudo 스냅 설치 youtube-dl# snap run youtube-dl로 실행합니다.
터미널을 열고 다음을 입력하세요.
youtube-dl -f best -ciw -o "%(title)s.%(ext)s" -v <url-of-channel>
...여기서는 <url-of-channel>
채널의 URL로 대체됩니다.
메모:많은 양의 비디오를 다운로드하는 경우 다운로드를 시작하기 전에 비디오를 저장할 디렉터리로 디렉터리를 변경해야 합니다.
설명
-f, --format FORMAT
video format code. The special name "best" will pick the best quality.
-c, --continue
force resume of partially downloaded files
-i, --ignore-errors
continue on download errors, for example to skip unavailable videos in a channel
-w, --no-overwrites
do not overwrite files
-v, --verbose
print various debugging information
답변2
youtube-dl 매뉴얼 페이지를 보면 부분 다운로드를 재개하는 옵션이 표시됩니다.
-c, --continue
Resume partially downloaded files.
매뉴얼 페이지링크
답변3
아마도 이 주장은 질문을 받았을 때 존재하지 않았지만 다음을 사용하면
--ignore-errors
오류에 관계없이 youtube-dl이 계속 다운로드됩니다. 이와 같은 포괄적인 솔루션은 중요한 오류를 놓친 경우 문제를 일으킬 가능성이 있으므로 주의해서 사용하십시오. 비록 10,000개의 비디오가 있는 채널에서는 그 중 일부가 제대로 다운로드되지 않아도 괜찮을 것입니다.
또한,
--download-archive archive.log
이미 다운로드한 항목을 추적하고 이미 받은 비디오를 건너뜁니다. 따라서 정전 등으로 인해 스크립트가 중지된 경우 다시 실행하면 처음부터 모든 항목을 다시 다운로드하려고 시도하지 않습니다. .
답변4
유용한 스크립트:youtube_channel_archiver