diff options
| author | 2021-10-05 23:30:05 -0400 | |
|---|---|---|
| committer | 2021-10-05 23:30:05 -0400 | |
| commit | 34ba2951b8c523713425c98addb9256ea05c946f (patch) | |
| tree | 6ec7e96d0c6e6f6e94b6b97ecd8c0a414ceef93d /gallery_dl/extractor/reddit.py | |
| parent | 3f5483df9075ae526f4c54f4cbe80edeabf6d4cc (diff) | |
New upstream version 1.19.0.upstream/1.19.0
Diffstat (limited to 'gallery_dl/extractor/reddit.py')
| -rw-r--r-- | gallery_dl/extractor/reddit.py | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/gallery_dl/extractor/reddit.py b/gallery_dl/extractor/reddit.py index 8953edd..43c7e50 100644 --- a/gallery_dl/extractor/reddit.py +++ b/gallery_dl/extractor/reddit.py @@ -139,7 +139,7 @@ class RedditSubredditExtractor(RedditExtractor): """Extractor for URLs from subreddits on reddit.com""" subcategory = "subreddit" pattern = (r"(?:https?://)?(?:\w+\.)?reddit\.com/r/" - r"([^/?#]+(?:/[a-z]+)?)/?(?:\?([^#]*))?(?:$|#)") + r"([^/?#]+(?:/([a-z]+))?)/?(?:\?([^#]*))?(?:$|#)") test = ( ("https://www.reddit.com/r/lavaporn/", { "range": "1-20", @@ -152,9 +152,11 @@ class RedditSubredditExtractor(RedditExtractor): ) def __init__(self, match): + self.subreddit, sub, params = match.groups() + self.params = text.parse_query(params) + if sub: + self.subcategory += "-" + sub RedditExtractor.__init__(self, match) - self.subreddit = match.group(1) - self.params = text.parse_query(match.group(2)) def submissions(self): return self.api.submissions_subreddit(self.subreddit, self.params) @@ -164,7 +166,7 @@ class RedditUserExtractor(RedditExtractor): """Extractor for URLs from posts by a reddit user""" subcategory = "user" pattern = (r"(?:https?://)?(?:\w+\.)?reddit\.com/u(?:ser)?/" - r"([^/?#]+(?:/[a-z]+)?)/?(?:\?([^#]*))?") + r"([^/?#]+(?:/([a-z]+))?)/?(?:\?([^#]*))?") test = ( ("https://www.reddit.com/user/username/", { "count": ">= 2", @@ -175,9 +177,11 @@ class RedditUserExtractor(RedditExtractor): ) def __init__(self, match): + self.user, sub, params = match.groups() + self.params = text.parse_query(params) + if sub: + self.subcategory += "-" + sub RedditExtractor.__init__(self, match) - self.user = match.group(1) - self.params = text.parse_query(match.group(2)) def submissions(self): return self.api.submissions_user(self.user, self.params) |
