Microsoft MVP성태의 닷넷 이야기
youtube-dl을 파이썬으로 실행하는 방법 [링크 복사], [링크+제목 복사],
조회: 4068
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

youtube-dl을 파이썬으로 실행하는 방법

오랜만에 실행했더니 오류가 발생하는군요. ^^

c:\temp\youtube-dl> youtube-dl.exe -F ...[생략]...
[youtube] ...: Downloading webpage
[youtube] ...: Downloading player 6f20102c
ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

재미있는 건, youtube-dl.exe가 있는 c:\temp 디렉터리가 아닌, 다른 곳에서 PATH를 연결해 실행하면 아예 Windows Defender에 의해 오류가 발생한다는 점입니다.

C:\temp2> youtube-dl
Access is denied.

This app can't run on your PC
To find a version for your PC, check with the software publisher.

지난번에는 업데이트해서 해결(1, 2)했는데, 이번에는 저게 최신 버전이었고 해결이 안 됩니다. ^^;




그런데, github에 가보면,

ytdl-org/youtube-dl
; https://github.com/ytdl-org/youtube-dl/issues

딱히 이에 관한 이슈가 없습니다. 음... 저만 문제 있는 걸까요? ^^ 암튼, 문제가 있으니 일단 youtube-dl.exe는 포기하고 github에 있는 소스코드를 직접 다운로드해 실행해 볼까 하는데요,

c:\temp> git clone https://github.com/ytdl-org/youtube-dl.git

일단, 파이썬으로 해보면 실행은 되는데 찝찝한 경고 하나가 남습니다.

c:\temp\youtube-dl> python -m youtube_dl -F [...영상_id...]
[youtube] ...: Downloading webpage
[youtube] ...: Downloading player 6f20102c
WARNING: [youtube] Unable to decode n-parameter: download likely to be throttled (Unhandled exception in decode; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output. Traceback (most recent call last):
  File "E:\git_clone\youtube-dl\youtube_dl\extractor\youtube.py", line 1672, in _n_descramble
    raise ExtractorError('Unhandled exception in decode')
youtube_dl.utils.ExtractorError: Unhandled exception in decode; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
)
[info] Available formats for ...:
format code  extension  resolution note
249          webm       audio only tiny   54k , webm_dash container, opus  (48000Hz), 1.56MiB
250          webm       audio only tiny   71k , webm_dash container, opus  (48000Hz), 2.06MiB
140          m4a        audio only tiny  129k , m4a_dash container, mp4a.40.2 (44100Hz), 3.72MiB
251          webm       audio only tiny  138k , webm_dash container, opus  (48000Hz), 3.97MiB
278          webm       256x144    144p   23k , webm_dash container, vp9, 30fps, video only, 704.15KiB
160          mp4        256x144    144p   27k , mp4_dash container, avc1.4d400c, 30fps, video only, 803.63KiB
242          webm       426x240    240p   28k , webm_dash container, vp9, 30fps, video only, 825.20KiB
133          mp4        426x240    240p   49k , mp4_dash container, avc1.4d4015, 30fps, video only, 1.42MiB
243          webm       640x360    360p   39k , webm_dash container, vp9, 30fps, video only, 1.15MiB
134          mp4        640x360    360p   87k , mp4_dash container, avc1.4d401e, 30fps, video only, 2.51MiB
18           mp4        640x360    360p  215k , avc1.42001E, 30fps, mp4a.40.2 (44100Hz) (best)

상관없습니다. 일단, 포맷은 구했으니 어쨌든 다운로드만 된다면 ^^ 우린 모든 걸 용서할 수 있습니다. 다행히 ^^ 아래와 같이 다운로드도 잘됩니다. ^^

c:\temp\youtube-dl> python -m youtube_dl [...영상_id...] -f 140
[youtube] ...: Downloading webpage
WARNING: [youtube] Unable to decode n-parameter: download likely to be throttled (Unhandled exception in decode; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output. Traceback (most recent call last):
  File "E:\git_clone\youtube-dl\youtube_dl\extractor\youtube.py", line 1672, in _n_descramble
    raise ExtractorError('Unhandled exception in decode')
youtube_dl.utils.ExtractorError: Unhandled exception in decode; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
)
[dashsegments] Total fragments: 1
[download] Destination: [...생략...].m4a
[download] 100% of 3.72MiB in 01:19
WARNING: ...: writing DASH m4a. Only some players support this container. Install ffmpeg or avconv to fix this automatically.

위의 경우는 오디오만 받았기 때문에 마지막에 경고가 나왔는데요, 괜찮습니다. 요즘 m4a 재생 못하는 프로그램이 없기 때문인데, 뭣하면 ffmpeg를 이용해 그냥 mp3로 바꿔도 됩니다. ^^

c:\temp> ffmpeg -i [...생략...].m4a [...생략...].mp3

// 시간 제어: 8초 전의 내용 삭제
c:\temp> ffmpeg -ss 8 -i [...생략...].m4a [...생략...].mp3

언제까지 youtube-dl이 안정적으로 실행될지는 알 수 없으나, 일단 ^^ 오늘은 여기까지만.









[최초 등록일: ]
[최종 수정일: 5/31/2023]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 16  17  18  [19] 
NoWriterDateCnt.TitleFile(s)
46정성태11/14/200510425사진 2장.^^ [1]
43정성태9/13/200510466"DLL은 하나의 스레드" ( 어느 자바 개발자 2명으로부터. )
44서용혁9/21/20059559    답변글 [^^]: "DLL 은 하나의 스레드" ( 어느 자바 개발자 2명으로부터. ) [1]
41정성태4/14/20059975프로그램하다 보면. ^^
39정성태3/31/200510488내가 기대하는 Internet Explorer 7.0 버전
40정보문4/1/200511084    답변글 [답변]: 내가 기대하는 Internet Explorer 7.0 버전
35정성태3/9/20059499언젠가 읽었던 시
34정성태3/4/200511471왜 국내 MS 개발자들은 J++, J# 안쓰나요???
32정성태2/23/20058954기지개
31정성태2/21/200512940웨스턴 디지털 하드 ... 불안하네요. ^^;
30정성태1/3/200510835블로그... 모르시는 분? ^^ [2]
37정성태3/13/20059835    답변글 RSS Reader 변경 [5]
56정성태12/12/20059342    답변글 연모 버그 2개
29정성태12/24/20049703SATA 하드 160GB와 메모리 1GB 추가.
28정성태11/14/200510430My Ferrari 3400
24정성태11/14/20059871MS Tech-Ed 2004 행사장에서 사진 2장. ^^ [1]
... 16  17  18  [19]