이거는 유튜브 쪽에 영상을 다운로드 받지 않습니까 그런 거 받으면 괜찮다 싶은 것들을 영상을 다운로드 받고 싶은 그런 경우가 있을 거라 생각을 해요. 그럴 때 어떻게 해야 되느냐라는 게 있을 때 유용하게 쓸 수 있는 코딩입니다. 그래서 첫 번째 같은 경우 제가 두 가지를 가지고 왔는데 첫 번째는 유튜브 영상을 다운로드 받아보는 거 하고 두 번째는 첫 번째가 그거네요. 첫 번째가 자막을 다운로드 받아보는 거 하고 그다음에 두 번째가 유튜브 영상을 다운로드 받아보는 겁니다. 이 두 가지를 가지고 왔는데 보시면 단점은 느려요. 느립니다. 해서 만약에 고화질로 해서 영상을 다운로드 받는다거나 이런 거 할 때 답답하실 거예요. 느리긴 합니다. 그렇지만 유용하게 쓰이거나 이런 것도 있을 것 같아요. 이거 할 때 패키지 하나 다운로드 받기는 해야 됩니다.
파이썬 유투브 자막 다운로드
하나가 있긴 한데 그거는 영상 다운로드 받는 거 이거를 참고를 해보시면 될 것 같고 어떤 플레이 유튜브 다운로드 하면 받는 거 자막이죠.자막이 한국어로 설정돼 있는 것으만 선별을 해서 다운로드 받아야 됩니다 만약에 한국어로 돼 있는 게 없다. 하는 게 있으면 에러가 날 거예요. 그거를 더 유튜브 자막 다운로드 받을 때는 유념만 해보시면 될 것 같습니다.
import youtube_dl
from youtube_transcript_api import YouTubeTranscriptApi
output_dir = os.path.join('./', '%(playlist_title)s', '%(playlist_index)s. %(title)s.%(ext)s')
# 플레이리스트 링크
download_list = ['https://www.youtube.com/watch?v=P5EzsnKRRY0']
ydl_opt = {
'outtmpl': output_dir,
#'format': 'bestaudio/best',
}
with youtube_dl.YoutubeDL(ydl_opt) as ydl:
ydl.download(download_list) #유투브 다운로드
srt = YouTubeTranscriptApi.get_transcript("P5EzsnKRRY0", languages=['ko'])
with open("C:/Users/user/NA/subtitle.txt", 'w', encoding='utf-8') as f : #유투브 영상 자막 다운
for i in srt :
#f.write("{}\n".format(i))
f.write(str(i) + '\n') #자막 다운
for i in srt : #텍스트 확인
print(i['text']) #확인
파이썬 영상 자막 다운로드
그리고 이 밑에 있는 이 코딩은 영상을 오디오 파일로 추출을 해서 가지고 옵니다. 이전에 제가 포스팅 했던 거랑 유사한 내용이긴 한데 이거 내용만 바꿔주면 될 것 같아요. 쉬울 것 같은데 영상을 오디오 파일로 추출했을 거기 다 그거만 없애면 됩니다. 그것만 없애고 그냥 변수만 오디오에 관련된 변수가 있는데 그것만 지우고 넣으시면 돼요. 그러면 영상으로 바로 다운로드가 됩니다. 그걸로 받으시면 될 것 같습니다. url 쪽에 리스트 형식으로 되어 있는 파이썬 코딩 안에 그게 있는데 거기 안에다가 유튜브 url을 집어넣으시면 바로 영상 다운로드가 되거든요. 그것만 참고만 해주시면 될 것 같습니다.
import youtube_dl
from youtube_transcript_api import YouTubeTranscriptApi
import pdfkit
from PyPDF2 import PdfFileReader, PdfFileWriter
from tika import parser
import pdfkit
output_dir = os.path.join('./', '%(playlist_title)s', '%(playlist_index)s. %(title)s.%(ext)s')
urls = [''
]
try :
ydl_opts = { #youtube_dl 라이브러리 설정
'outtmpl': output_dir,
'format': 'bestaudio/best', #최고 품질로 추출
'postprocessors': [{
'key': 'FFmpegExtractAudio', #영상을 오디오 파일로 추출
'preferredcodec': 'mp3', #오디오 파일 포멧을 mp3파일로 설정
'preferredquality': '192', #오디오 품질 설정 192k
}],
}
with youtube_dl.YoutubeDL(ydl_opts) as ydl :
for url in urls :
ydl.download([url])
except :
pass
print("다운로드가 완료되었습니다.")
'Python' 카테고리의 다른 글
[파이썬] 카카오 번역 API 활용해보기 (0) | 2022.08.07 |
---|---|
[파이썬] selenium 셀레늄 최신 구글 크롬 브라우저 코딩 (0) | 2022.08.07 |
[파이썬] 네이버 카페 API 포스팅 리스트 추출 (0) | 2022.08.07 |
[파이썬] 네이버 API 뉴스 검색 (0) | 2022.08.07 |
[파이썬] 인스타그램 해시태그 검색 크롤링 자동 리스트업 (0) | 2022.08.07 |
댓글