[wallpapercave] support 'album' listings (#5925)
This commit is contained in:
@@ -18,7 +18,7 @@ class WallpapercaveImageExtractor(Extractor):
|
|||||||
category = "wallpapercave"
|
category = "wallpapercave"
|
||||||
subcategory = "image"
|
subcategory = "image"
|
||||||
root = "https://wallpapercave.com"
|
root = "https://wallpapercave.com"
|
||||||
pattern = r"(?:https?://)?(?:www\.)?wallpapercave\.com"
|
pattern = r"(?:https?://)?(?:www\.)?wallpapercave\.com/"
|
||||||
example = "https://wallpapercave.com/w/wp12345"
|
example = "https://wallpapercave.com/w/wp12345"
|
||||||
|
|
||||||
def items(self):
|
def items(self):
|
||||||
@@ -40,3 +40,12 @@ class WallpapercaveImageExtractor(Extractor):
|
|||||||
image = text.nameext_from_url(path)
|
image = text.nameext_from_url(path)
|
||||||
yield Message.Directory, image
|
yield Message.Directory, image
|
||||||
yield Message.Url, self.root + path, image
|
yield Message.Url, self.root + path, image
|
||||||
|
|
||||||
|
if path is None:
|
||||||
|
for wp in text.extract_iter(
|
||||||
|
page, 'class="wallpaper" id="wp', '</picture>'):
|
||||||
|
path = text.rextract(wp, ' src="', '"')[0]
|
||||||
|
if path:
|
||||||
|
image = text.nameext_from_url(path)
|
||||||
|
yield Message.Directory, image
|
||||||
|
yield Message.Url, self.root + path, image
|
||||||
|
|||||||
@@ -12,7 +12,22 @@ __tests__ = (
|
|||||||
"#url" : "https://wallpapercave.com/w/wp10270355",
|
"#url" : "https://wallpapercave.com/w/wp10270355",
|
||||||
"#category": ("", "wallpapercave", "image"),
|
"#category": ("", "wallpapercave", "image"),
|
||||||
"#class" : wallpapercave.WallpapercaveImageExtractor,
|
"#class" : wallpapercave.WallpapercaveImageExtractor,
|
||||||
|
"#urls" : "https://wallpapercave.com/download/sekai-saikou-no-ansatsusha-isekai-kizoku-ni-tensei-suru-wallpapers-wp10270355",
|
||||||
"#sha1_content": "58b088aaa1cf1a60e347015019eb0c5a22b263a6",
|
"#sha1_content": "58b088aaa1cf1a60e347015019eb0c5a22b263a6",
|
||||||
},
|
},
|
||||||
|
|
||||||
|
{
|
||||||
|
"#url" : "https://wallpapercave.com/apple-wwdc-2024-wallpapers",
|
||||||
|
"#comment" : "album listing",
|
||||||
|
"#category": ("", "wallpapercave", "image"),
|
||||||
|
"#class" : wallpapercave.WallpapercaveImageExtractor,
|
||||||
|
"#archive" : False,
|
||||||
|
"#urls" : [
|
||||||
|
"https://wallpapercave.com/wp/wp13775438.jpg",
|
||||||
|
"https://wallpapercave.com/wp/wp13775439.jpg",
|
||||||
|
"https://wallpapercave.com/wp/wp13775440.jpg",
|
||||||
|
"https://wallpapercave.com/wp/wp13775441.jpg",
|
||||||
|
],
|
||||||
|
},
|
||||||
|
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user