aboutsummaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorAlex <alexta69@gmail.com>2021-07-25 21:47:43 +0300
committerGitHub <noreply@github.com>2021-07-25 21:47:43 +0300
commit3b97f4791528c4bf84b8e1acbb02ee26578097f2 (patch)
tree86904ea2cedc183386c6a24be689c45912fb39aa /app
parentfirefox bookmarklet (diff)
parentset AUDIO_DOWNLOAD_DIR to the value if DOWNLOAD_DIR if it wasn't overriden in... (diff)
downloadmetube-3b97f4791528c4bf84b8e1acbb02ee26578097f2.tar.gz
metube-3b97f4791528c4bf84b8e1acbb02ee26578097f2.tar.bz2
metube-3b97f4791528c4bf84b8e1acbb02ee26578097f2.zip
Merge pull request #36 from omeryagmurlu/master
Add AUDIO_DOWNLOAD_DIR option
Diffstat (limited to 'app')
-rw-r--r--app/main.py4
-rw-r--r--app/ytdl.py3
2 files changed, 6 insertions, 1 deletions
diff --git a/app/main.py b/app/main.py
index b8b512d..dad19e3 100644
--- a/app/main.py
+++ b/app/main.py
@@ -16,6 +16,7 @@ log = logging.getLogger('main')
class Config:
_DEFAULTS = {
'DOWNLOAD_DIR': '.',
+ 'AUDIO_DOWNLOAD_DIR': '%%DOWNLOAD_DIR',
'URL_PREFIX': '',
'OUTPUT_TEMPLATE': '%(title)s.%(ext)s',
}
@@ -23,6 +24,9 @@ class Config:
def __init__(self):
for k, v in self._DEFAULTS.items():
setattr(self, k, os.environ[k] if k in os.environ else v)
+ for k, v in self.__dict__.items():
+ if v.startswith('%%'):
+ setattr(self, k, getattr(self, v[2:]))
if not self.URL_PREFIX.endswith('/'):
self.URL_PREFIX += '/'
diff --git a/app/ytdl.py b/app/ytdl.py
index c6b09ff..d29f108 100644
--- a/app/ytdl.py
+++ b/app/ytdl.py
@@ -148,7 +148,8 @@ class DownloadQueue:
elif etype == 'video' or etype.startswith('url') and 'id' in entry:
if entry['id'] not in self.queue:
dl = DownloadInfo(entry['id'], entry['title'], entry.get('webpage_url') or entry['url'])
- self.queue[entry['id']] = Download(self.config.DOWNLOAD_DIR, self.config.OUTPUT_TEMPLATE, quality, dl)
+ dldirectory = self.config.DOWNLOAD_DIR if quality != 'audio' else self.config.AUDIO_DOWNLOAD_DIR
+ self.queue[entry['id']] = Download(dldirectory, self.config.OUTPUT_TEMPLATE, quality, dl)
self.event.set()
await self.notifier.added(dl)
return {'status': 'ok'}
bgstack15