[xenforo] add 'media-album' extractor (#8902)
This commit is contained in:
@@ -1912,25 +1912,25 @@ Consider all listed sites to potentially be NSFW.
|
||||
<tr id="simpcity" title="simpcity">
|
||||
<td>SimpCity Forums</td>
|
||||
<td>https://simpcity.cr/</td>
|
||||
<td>Forums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td>Forums, Albums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td>Supported</td>
|
||||
</tr>
|
||||
<tr id="nudostarforum" title="nudostarforum">
|
||||
<td>NudoStar Forums</td>
|
||||
<td>https://nudostar.com/forum/</td>
|
||||
<td>Forums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td>Forums, Albums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td>Supported</td>
|
||||
</tr>
|
||||
<tr id="atfforum" title="atfforum">
|
||||
<td>All The Fallen</td>
|
||||
<td>https://allthefallen.moe/forum/</td>
|
||||
<td>Forums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td>Forums, Albums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
<tr id="celebforum" title="celebforum">
|
||||
<td>celebforum</td>
|
||||
<td>https://celebforum.to/</td>
|
||||
<td>Forums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td>Forums, Albums, Media Categories, Media Files, User Media, Posts, Threads</td>
|
||||
<td></td>
|
||||
</tr>
|
||||
|
||||
|
||||
@@ -476,6 +476,22 @@ class XenforoMediaUserExtractor(XenforoExtractor):
|
||||
return self.items_media(f"{groups[-4]}media/users/{user}", pnum)
|
||||
|
||||
|
||||
class XenforoMediaAlbumExtractor(XenforoExtractor):
|
||||
subcategory = "media-album"
|
||||
directory_fmt = ("{category}", "Media", "Albums",
|
||||
"{album_slug} ({album_id})")
|
||||
filename_fmt = "{filename}.{extension}"
|
||||
archive_fmt = "{id}"
|
||||
pattern = (BASE_PATTERN + r"(/(?:index\.php\?)?"
|
||||
r"media/albums/([^/?#]+))(?:/page-(\d+))?")
|
||||
example = "https://simpcity.cr/media/albums/ALBUM.123/"
|
||||
|
||||
def items(self):
|
||||
slug, _, self.kwdict["album_id"] = self.groups[-2].rpartition(".")
|
||||
self.kwdict["album_slug"] = text.unquote(slug)
|
||||
return self.items_media(self.groups[-3], self.groups[-1])
|
||||
|
||||
|
||||
class XenforoMediaCategoryExtractor(XenforoExtractor):
|
||||
subcategory = "media-category"
|
||||
directory_fmt = ("{category}", "Media", "Category", "{mcategory}")
|
||||
|
||||
@@ -475,6 +475,7 @@ SUBCATEGORY_MAP = {
|
||||
"media-user": "User Media",
|
||||
"media-item": "Media Files",
|
||||
"media-category": "Media Categories",
|
||||
"media-album" : "Albums",
|
||||
},
|
||||
}
|
||||
|
||||
|
||||
@@ -154,4 +154,10 @@ __tests__ = (
|
||||
"#class" : xenforo.XenforoMediaCategoryExtractor,
|
||||
},
|
||||
|
||||
{
|
||||
"#url" : "https://allthefallen.moe/forum/index.php?media/albums/2-%E9%AD%94%E6%B3%95%E5%B0%91%E5%A5%B3%E3%81%AB%E3%81%82%E3%81%93%E3%81%8C%E3%82%8C%E3%81%A6-mahou-shoujo-ni-akogarete.7385/",
|
||||
"#category": ("xenforo", "atfforum", "media-album"),
|
||||
"#class" : xenforo.XenforoMediaAlbumExtractor,
|
||||
},
|
||||
|
||||
)
|
||||
|
||||
@@ -99,4 +99,10 @@ __tests__ = (
|
||||
"#count" : 50,
|
||||
},
|
||||
|
||||
{
|
||||
"#url" : "https://celebforum.to/media/albums/5404/",
|
||||
"#category": ("xenforo", "celebforum", "media-album"),
|
||||
"#class" : xenforo.XenforoMediaAlbumExtractor,
|
||||
},
|
||||
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user