[e621] support e621.cc and e621.anthro.fr frontend URLs (#6809)
This commit is contained in:
@@ -1184,7 +1184,7 @@ Consider all listed sites to potentially be NSFW.
|
|||||||
<tr>
|
<tr>
|
||||||
<td>e621</td>
|
<td>e621</td>
|
||||||
<td>https://e621.net/</td>
|
<td>https://e621.net/</td>
|
||||||
<td>Favorites, Pools, Popular Images, Posts, Tag Searches</td>
|
<td>Favorites, Pools, Popular Images, Posts, Tag Searches, Frontends</td>
|
||||||
<td>Supported</td>
|
<td>Supported</td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
|
|
||||||
"""Extractors for https://e621.net/ and other e621 instances"""
|
"""Extractors for https://e621.net/ and other e621 instances"""
|
||||||
|
|
||||||
from .common import Message
|
from .common import Extractor, Message
|
||||||
from . import danbooru
|
from . import danbooru
|
||||||
from ..cache import memcache
|
from ..cache import memcache
|
||||||
from .. import text, util
|
from .. import text, util
|
||||||
@@ -156,3 +156,20 @@ class E621FavoriteExtractor(E621Extractor):
|
|||||||
|
|
||||||
def posts(self):
|
def posts(self):
|
||||||
return self._pagination("/favorites.json", self.query)
|
return self._pagination("/favorites.json", self.query)
|
||||||
|
|
||||||
|
|
||||||
|
class E621FrontendExtractor(Extractor):
|
||||||
|
"""Extractor for alternative e621 frontends"""
|
||||||
|
basecategory = "E621"
|
||||||
|
category = "e621"
|
||||||
|
subcategory = "frontend"
|
||||||
|
pattern = r"(?:https?://)?e621\.(?:cc/\?tags|anthro\.fr/\?q)=([^&#]*)"
|
||||||
|
example = "https://e621.cc/?tags=TAG"
|
||||||
|
|
||||||
|
def initialize(self):
|
||||||
|
pass
|
||||||
|
|
||||||
|
def items(self):
|
||||||
|
url = "https://e621.net/posts?tags=" + self.groups[0]
|
||||||
|
data = {"_extractor": E621TagExtractor}
|
||||||
|
yield Message.Queue, url, data
|
||||||
|
|||||||
@@ -578,6 +578,9 @@ def build_extractor_list():
|
|||||||
default["wikifeetx"] = default["wikifeet"]
|
default["wikifeetx"] = default["wikifeet"]
|
||||||
domains["wikifeetx"] = "https://www.wikifeetx.com/"
|
domains["wikifeetx"] = "https://www.wikifeetx.com/"
|
||||||
|
|
||||||
|
# add extra e621 extractors
|
||||||
|
categories["E621"]["e621"].extend(default.pop("e621", ()))
|
||||||
|
|
||||||
return categories, domains
|
return categories, domains
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
25
test/results/E621.py
Normal file
25
test/results/E621.py
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
|
# 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
|
||||||
|
# published by the Free Software Foundation.
|
||||||
|
|
||||||
|
from gallery_dl.extractor import e621
|
||||||
|
|
||||||
|
|
||||||
|
__tests__ = (
|
||||||
|
{
|
||||||
|
"#url" : "https://e621.cc/?tags=rating:safe",
|
||||||
|
"#category": ("E621", "e621", "frontend"),
|
||||||
|
"#class" : e621.E621FrontendExtractor,
|
||||||
|
"#urls" : "https://e621.net/posts?tags=rating:safe",
|
||||||
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"#url" : "https://e621.anthro.fr/?q=rating:safe",
|
||||||
|
"#category": ("E621", "e621", "frontend"),
|
||||||
|
"#class" : e621.E621FrontendExtractor,
|
||||||
|
"#urls" : "https://e621.net/posts?tags=rating:safe",
|
||||||
|
},
|
||||||
|
|
||||||
|
)
|
||||||
Reference in New Issue
Block a user