[sankaku] add 'id-format' option (#5073)

pull/5124/head
Mike Fährmann 8 months ago
parent afd20ef42c
commit 34a4ddc399
No known key found for this signature in database
GPG Key ID: 5680CA389D365A88

@ -3009,6 +3009,19 @@ Description
restrict it to only one possible format. restrict it to only one possible format.
extractor.sankaku.id-format
---------------------------
Type
``string``
Default
``"numeric"``
Description
Format of ``id`` metadata fields.
* ``"alphanumeric"`` or ``"alnum"``: 11-character alphanumeric IDs (``y0abGlDOr2o``)
* ``"numeric"`` or ``"legacy"``: numeric IDs (``360451``)
extractor.sankaku.refresh extractor.sankaku.refresh
------------------------- -------------------------
Type Type

@ -180,11 +180,15 @@ class SankakuAPI():
self.extractor = extractor self.extractor = extractor
self.headers = { self.headers = {
"Accept" : "application/vnd.sankaku.api+json;v=2", "Accept" : "application/vnd.sankaku.api+json;v=2",
"Platform": "web-app", "Platform" : "web-app",
"Api-Version": None,
"Origin" : extractor.root, "Origin" : extractor.root,
} }
self.username, self.password = self.extractor._get_auth_info() if extractor.config("id-format") in ("alnum", "alphanumeric"):
self.headers["Api-Version"] = "2"
self.username, self.password = extractor._get_auth_info()
if not self.username: if not self.username:
self.authenticate = util.noop self.authenticate = util.noop

@ -119,11 +119,16 @@ __tests__ = (
{ {
"#url" : "https://sankaku.app/posts/y0abGlDOr2o", "#url" : "https://sankaku.app/posts/y0abGlDOr2o",
"#comment" : "extended tag categories; alphanumeric ID (#5073)",
"#category": ("booru", "sankaku", "post"), "#category": ("booru", "sankaku", "post"),
"#class" : sankaku.SankakuPostExtractor, "#class" : sankaku.SankakuPostExtractor,
"#options" : {"tags": True}, "#options" : {
"tags" : True,
"id-format": "alphanumeric",
},
"#sha1_content": "5e255713cbf0a8e0801dc423563c34d896bb9229", "#sha1_content": "5e255713cbf0a8e0801dc423563c34d896bb9229",
"id": "y0abGlDOr2o",
"tags_artist": [ "tags_artist": [
"bonocho", "bonocho",
], ],
@ -150,6 +155,8 @@ __tests__ = (
"#category": ("booru", "sankaku", "post"), "#category": ("booru", "sankaku", "post"),
"#class" : sankaku.SankakuPostExtractor, "#class" : sankaku.SankakuPostExtractor,
"#pattern" : r"https://s\.sankakucomplex\.com/data/ac/8e/ac8e3b92ea328ce9cf7211e69c905bf9\.jpg\?e=.+", "#pattern" : r"https://s\.sankakucomplex\.com/data/ac/8e/ac8e3b92ea328ce9cf7211e69c905bf9\.jpg\?e=.+",
"id": 360451,
}, },
{ {
@ -169,6 +176,7 @@ __tests__ = (
"#options" : {"tags": True}, "#options" : {"tags": True},
"#count" : 1, "#count" : 1,
"id" : 20758561,
"tags" : list, "tags" : list,
"tags_general": [ "tags_general": [
"key(mangaka)", "key(mangaka)",

Loading…
Cancel
Save