fix constructor params bug for VideoToAudioDownloader & skip errors on playlist download
This commit is contained in:
@@ -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
16
main.py
@@ -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():
|
||||
|
||||
Reference in New Issue
Block a user