1
0
mirror of https://github.com/mikf/gallery-dl.git synced 2024-11-26 12:42:29 +01:00

merge #5224: [artstation] update URL patterns to recognize usernames with dashes

This commit is contained in:
Mike Fährmann 2024-02-21 14:41:02 +01:00
commit b4c46de4b8
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88
2 changed files with 24 additions and 3 deletions

View File

@ -175,7 +175,7 @@ class ArtstationUserExtractor(ArtstationExtractor):
subcategory = "user"
pattern = (r"(?:https?://)?(?:(?:www\.)?artstation\.com"
r"/(?!artwork|projects|search)([^/?#]+)(?:/albums/all)?"
r"|((?!www)\w+)\.artstation\.com(?:/projects)?)/?$")
r"|((?!www)[\w-]+)\.artstation\.com(?:/projects)?)/?$")
example = "https://www.artstation.com/USER"
def projects(self):
@ -192,7 +192,7 @@ class ArtstationAlbumExtractor(ArtstationExtractor):
archive_fmt = "a_{album[id]}_{asset[id]}"
pattern = (r"(?:https?://)?(?:(?:www\.)?artstation\.com"
r"/(?!artwork|projects|search)([^/?#]+)"
r"|((?!www)\w+)\.artstation\.com)/albums/(\d+)")
r"|((?!www)[\w-]+)\.artstation\.com)/albums/(\d+)")
example = "https://www.artstation.com/USER/albums/12345"
def __init__(self, match):
@ -355,7 +355,7 @@ class ArtstationImageExtractor(ArtstationExtractor):
"""Extractor for images from a single artstation project"""
subcategory = "image"
pattern = (r"(?:https?://)?(?:"
r"(?:\w+\.)?artstation\.com/(?:artwork|projects|search)"
r"(?:[\w-]+\.)?artstation\.com/(?:artwork|projects|search)"
r"|artstn\.co/p)/(\w+)")
example = "https://www.artstation.com/artwork/abcde"

View File

@ -157,4 +157,25 @@ __tests__ = (
"#count" : ">= 40",
},
{
"#url" : "https://fede-x-rojas.artstation.com/projects/WBdaZy",
"#comment" : "dash in username",
"#category": ("", "artstation", "image"),
"#class" : artstation.ArtstationImageExtractor,
},
{
"#url" : "https://fede-x-rojas.artstation.com/albums/8533110",
"#comment" : "dash in username",
"#category": ("", "artstation", "album"),
"#class" : artstation.ArtstationAlbumExtractor,
},
{
"#url" : "https://fede-x-rojas.artstation.com/",
"#comment" : "dash in username",
"#category": ("", "artstation", "user"),
"#class" : artstation.ArtstationUserExtractor,
},
)