mirror of
https://github.com/minetest-mods/skinsdb.git
synced 2024-11-18 07:50:23 +01:00
Replace skinsdb API source (#91)
The old API is no longer reachable, thus got replaced. This also removes the obsolete skin preview download because the mod is capable of generating them automatically. Co-authored-by: CallMeDax <142984237+CallMeDax@users.noreply.github.com>
This commit is contained in:
parent
d3c7fa71c0
commit
271c109073
@ -47,9 +47,8 @@ if #internal.errors > 0 then
|
||||
end
|
||||
|
||||
-- http://minetest.fensta.bplaced.net/api/apidoku.md
|
||||
local root_url = "http://minetest.fensta.bplaced.net"
|
||||
local page_url = root_url .. "/api/v2/get.json.php?getlist&page=%i&outformat=base64" -- [1] = Page#
|
||||
local preview_url = root_url .. "/skins/1/%i.png" -- [1] = ID
|
||||
local root_url = "http://skinsdb.terraqueststudios.net"
|
||||
local page_url = root_url .. "/api/v1/content?client=mod&page=%i" -- [1] = Page#
|
||||
|
||||
local mod_path = skins.modpath
|
||||
local meta_path = mod_path .. "/meta/"
|
||||
@ -100,9 +99,6 @@ local function safe_single_skin(skin)
|
||||
skins_path .. name .. ".png",
|
||||
core.decode_base64(skin.img)
|
||||
)
|
||||
fetch_url(preview_url:format(skin.id), function(preview)
|
||||
unsafe_file_write(skins_path .. name .. skins.fsep .. "preview.png", preview)
|
||||
end)
|
||||
core.log("action", ("%s: Completed skin %s"):format(_ID_, name))
|
||||
end
|
||||
|
||||
|
@ -4,12 +4,11 @@ import sys, requests, base64
|
||||
#fsep = "_"
|
||||
fsep = "."
|
||||
|
||||
download_preview = ( len (sys.argv) > 1 and sys.argv[1] == "with_preview" )
|
||||
|
||||
|
||||
print("Downloading skins from minetest.fensta.bplaced.net ...")
|
||||
print("Downloading skins from skinsdb.terraqueststudio.net ...")
|
||||
# Requesting all skins and their raw texture using the API
|
||||
r = requests.get('http://minetest.fensta.bplaced.net/api/v2/get.json.php?getlist&page=1&per_page=999999999')
|
||||
r = requests.get('http://skinsdb.terraqueststudios.net/api/v1/content?client=script&page=1&per_page=10000')
|
||||
|
||||
if r.status_code != 200:
|
||||
sys.exit("Request failed!")
|
||||
@ -17,10 +16,7 @@ if r.status_code != 200:
|
||||
data = r.json()
|
||||
count = 0
|
||||
|
||||
if download_preview:
|
||||
print("Writing to file and downloading previews ...")
|
||||
else:
|
||||
print("Writing skins")
|
||||
print("Writing skins")
|
||||
|
||||
|
||||
for json in data["skins"]:
|
||||
@ -42,17 +38,5 @@ for json in data["skins"]:
|
||||
print("Added #%s Name: %s Author: %s License: %s" % (id, name, author, license))
|
||||
count += 1
|
||||
|
||||
if download_preview:
|
||||
# Downloading the preview of the skin
|
||||
r2 = requests.get('http://minetest.fensta.bplaced.net/skins/1/' + id + ".png")
|
||||
if r2.status_code == 200:
|
||||
# Preview file
|
||||
preview = r2.content
|
||||
file = open("../textures/character_" + id + fsep + "preview.png", "wb")
|
||||
file.write(bytearray(preview))
|
||||
file.close()
|
||||
else:
|
||||
print("Failed to download skin preview #" + id)
|
||||
|
||||
|
||||
print("Fetched " + str(count) + " skins!")
|
||||
|
Loading…
Reference in New Issue
Block a user