fix constructor params bug for VideoToAudioDownloader & skip errors on playlist download

This commit is contained in:
ALIHAN DIKEL
2023-04-27 01:01:45 +03:00
parent 5307707c4c
commit a78c715a01
2 changed files with 21 additions and 22 deletions

View File

@@ -7,19 +7,20 @@ from datahandler import DataHandler
class VideoToAudioDownloader():
def __init__(self, params=None):
if params == None:
self.yt_opts = {
'proxy' : 'http://alihan:dikel@128.199.50.73:2065',
'format': 'm4a/bestaudio/best',
'outtmpl': 'audios/%(id)s_%(release_date)s.%(ext)s',
# See help(yt_dlp.postprocessor) for a list of available Postprocessors and their arguments
'postprocessors': [{
# Extract audio using ffmpeg
'key': 'FFmpegExtractAudio',
'preferredcodec': 'm4a',
}]
}
else: self.yt_opts = params
self.yt_opts = {
'ignoreerrors': True,
#'playlistreverse': True,
'format': 'm4a/bestaudio/best',
'outtmpl': 'audios/%(id)s_%(release_date)s.%(ext)s',
# See help(yt_dlp.postprocessor) for a list of available Postprocessors and their arguments
'postprocessors': [{
# Extract audio using ffmpeg
'key': 'FFmpegExtractAudio',
'preferredcodec': 'm4a',
}]
}
if params != None:
self.yt_opts.update(params)
self.DataHandler = DataHandler()
def download_audio_from_yt(self, url):

16
main.py
View File

@@ -14,20 +14,18 @@ def cli():
@cli.command()
@click.argument('urls', nargs=-1)
@click.argument('url', nargs=-1)
@click.option('--proxy', default=None, is_flag=False)
def download(urls, proxy):
def download(url, proxy):
params = None
if proxy:
params = {"proxy": proxy}
vad = VideoToAudioDownloader(params=params)
for url in urls:
try:
logger.info(f"attempting to download: {url}")
vad.download_audio_from_yt(url)
except DownloadError as de:
logger.warning(f"failed to download {url} b/c: {de}")
time.sleep(2)
try:
logger.info(f"attempting to download: {url}")
vad.download_audio_from_yt(url)
except DownloadError as de:
logger.warning(f"failed to download {url} b/c: {de}")
@cli.command()
def transcribe():