aboutsummaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/danbooru.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/extractor/danbooru.py')
-rw-r--r--gallery_dl/extractor/danbooru.py23
1 files changed, 12 insertions, 11 deletions
diff --git a/gallery_dl/extractor/danbooru.py b/gallery_dl/extractor/danbooru.py
index c3dfd91..37b6747 100644
--- a/gallery_dl/extractor/danbooru.py
+++ b/gallery_dl/extractor/danbooru.py
@@ -26,16 +26,7 @@ class DanbooruExtractor(BaseExtractor):
def _init(self):
self.ugoira = self.config("ugoira", False)
self.external = self.config("external", False)
-
- includes = self.config("metadata")
- if includes:
- if isinstance(includes, (list, tuple)):
- includes = ",".join(includes)
- elif not isinstance(includes, str):
- includes = "artist_commentary,children,notes,parent,uploader"
- self.includes = includes + ",id"
- else:
- self.includes = False
+ self.includes = False
threshold = self.config("threshold")
if isinstance(threshold, int):
@@ -56,6 +47,16 @@ class DanbooruExtractor(BaseExtractor):
return pages * self.per_page
def items(self):
+ # 'includes' initialization must be done here and not in '_init()'
+ # or it'll cause an exception with e621 when 'metadata' is enabled
+ includes = self.config("metadata")
+ if includes:
+ if isinstance(includes, (list, tuple)):
+ includes = ",".join(includes)
+ elif not isinstance(includes, str):
+ includes = "artist_commentary,children,notes,parent,uploader"
+ self.includes = includes + ",id"
+
data = self.metadata()
for post in self.posts():
@@ -223,7 +224,7 @@ class DanbooruTagExtractor(DanbooruExtractor):
else:
prefix = None
elif tag.startswith(
- ("id:", "md5", "ordfav:", "ordfavgroup:", "ordpool:")):
+ ("id:", "md5:", "ordfav:", "ordfavgroup:", "ordpool:")):
prefix = None
break