[joyreactor] add extractor for search results (#148)

This commit is contained in:
Mike Fährmann
2019-01-03 11:53:46 +01:00
parent a303efb597
commit a36f52a730
3 changed files with 42 additions and 10 deletions

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright 2018 Mike Fährmann
# Copyright 2018-2019 Mike Fährmann
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
@@ -138,6 +138,22 @@ class JoyreactorTagExtractor(JoyreactorExtractor):
return {"search_tags": text.unescape(self.tag).replace("+", " ")}
class JoyreactorSearchExtractor(JoyreactorTagExtractor):
"""Extractor for search results on joyreactor.cc"""
subcategory = "search"
directory_fmt = ["{category}", "search", "{search_tags}"]
archive_fmt = "s_{search_tags}_{post_id}_{num}"
pattern = [BASE_PATTERN + r"/search(?:/|\?q=)([^/?&#]+)"]
test = [
("http://joyreactor.com/search?q=Cirno+Gifs", {
"count": ">= 0",
}),
("http://joyreactor.cc/search/Cirno+Gifs", {
"count": ">= 0",
}),
]
class JoyreactorUserExtractor(JoyreactorExtractor):
"""Extractor for all posts of a user on joyreactor.cc"""
subcategory = "user"

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
# Copyright 2018 Mike Fährmann
# Copyright 2018-2019 Mike Fährmann
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License version 2 as
@@ -10,6 +10,7 @@
from .joyreactor import (
JoyreactorTagExtractor,
JoyreactorSearchExtractor,
JoyreactorUserExtractor,
JoyreactorPostExtractor,
)
@@ -30,6 +31,19 @@ class PornreactorTagExtractor(JoyreactorTagExtractor):
]
class PornreactorSearchExtractor(JoyreactorSearchExtractor):
"""Extractor for search results on pornreactor.cc"""
category = "pornreactor"
pattern = [BASE_PATTERN + r"/search(?:/|\?q=)([^/?&#]+)"]
test = [
("http://pornreactor.cc/search?q=ecchi+hentai", {
"range": "1-25",
"count": ">= 20",
}),
("http://fapreactor.com/search/ecchi+hentai", None),
]
class PornreactorUserExtractor(JoyreactorUserExtractor):
"""Extractor for all posts of a user on pornreactor.cc"""
category = "pornreactor"