summaryrefslogtreecommitdiffstats
path: root/gallery_dl/extractor/inkbunny.py
diff options
context:
space:
mode:
Diffstat (limited to 'gallery_dl/extractor/inkbunny.py')
-rw-r--r--gallery_dl/extractor/inkbunny.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/gallery_dl/extractor/inkbunny.py b/gallery_dl/extractor/inkbunny.py
index f3098f1..bff3156 100644
--- a/gallery_dl/extractor/inkbunny.py
+++ b/gallery_dl/extractor/inkbunny.py
@@ -132,6 +132,7 @@ class InkbunnyPoolExtractor(InkbunnyExtractor):
class InkbunnyFavoriteExtractor(InkbunnyExtractor):
"""Extractor for inkbunny user favorites"""
subcategory = "favorite"
+ directory_fmt = ("{category}", "{favs_username!l}", "Favorites")
pattern = (BASE_PATTERN + r"/(?:"
r"userfavorites_process\.php\?favs_user_id=(\d+)|"
r"submissionsviewall\.php"
@@ -151,7 +152,17 @@ class InkbunnyFavoriteExtractor(InkbunnyExtractor):
self.orderby = params.get("orderby", "fav_datetime")
def metadata(self):
- return {"favs_user_id": self.user_id}
+ # Lookup fav user ID as username
+ url = "{}/userfavorites_process.php?favs_user_id={}".format(
+ self.root, self.user_id)
+ page = self.request(url).text
+ user_link = text.extr(page, '<a rel="author"', '</a>')
+ favs_username = text.extr(user_link, 'href="/', '"')
+
+ return {
+ "favs_user_id": self.user_id,
+ "favs_username": favs_username,
+ }
def posts(self):
params = {