[deviantart] update 'search' argument handling (fixes #1911)
- use 'alltime' by default - support newer 'order' values (most-recent, this-week, etc)
This commit is contained in:
@@ -746,29 +746,27 @@ class DeviantartPopularExtractor(DeviantartExtractor):
|
|||||||
|
|
||||||
def __init__(self, match):
|
def __init__(self, match):
|
||||||
DeviantartExtractor.__init__(self, match)
|
DeviantartExtractor.__init__(self, match)
|
||||||
self.search_term = self.time_range = self.category_path = None
|
|
||||||
self.user = ""
|
self.user = ""
|
||||||
|
|
||||||
trange1, path, trange2, query = match.groups()
|
trange1, path, trange2, query = match.groups()
|
||||||
trange = trange1 or trange2
|
|
||||||
query = text.parse_query(query)
|
query = text.parse_query(query)
|
||||||
|
self.search_term = query.get("q")
|
||||||
|
|
||||||
if not trange:
|
trange = trange1 or trange2 or query.get("order", "")
|
||||||
trange = query.get("order")
|
if trange.startswith("popular-"):
|
||||||
|
trange = trange[8:]
|
||||||
if path:
|
self.time_range = {
|
||||||
self.category_path = path.strip("/")
|
"most-recent" : "now",
|
||||||
if trange:
|
"this-week" : "1week",
|
||||||
if trange.startswith("popular-"):
|
"this-month" : "1month",
|
||||||
trange = trange[8:]
|
"this-century": "alltime",
|
||||||
self.time_range = trange.replace("-", "").replace("hours", "hr")
|
"all-time" : "alltime",
|
||||||
if query:
|
}.get(trange, "alltime")
|
||||||
self.search_term = query.get("q")
|
|
||||||
|
|
||||||
self.popular = {
|
self.popular = {
|
||||||
"search": self.search_term or "",
|
"search": self.search_term or "",
|
||||||
"range" : trange or "",
|
"range" : trange or "all-time",
|
||||||
"path" : self.category_path,
|
"path" : path.strip("/") if path else "",
|
||||||
}
|
}
|
||||||
|
|
||||||
def deviations(self):
|
def deviations(self):
|
||||||
|
|||||||
Reference in New Issue
Block a user