hardcoded whatever idc for now
This commit is contained in:
47
tools/isrcFiller.ts
Normal file
47
tools/isrcFiller.ts
Normal file
@@ -0,0 +1,47 @@
|
||||
import { appleMusicFetch } from "../3p/appleMusicClient";
|
||||
import { spotifyFetch } from "../3p/spotifyClient";
|
||||
|
||||
const APM_ID = "1552965331";
|
||||
const SPT_ID = "0kDiUhIznBbi6Y3slWiOBS";
|
||||
|
||||
const appleResult = await appleMusicFetch("/catalog/us/albums/" + APM_ID);
|
||||
const spotiResult = await spotifyFetch("/albums/" + SPT_ID + "?market=US");
|
||||
|
||||
const appleAlbum = appleResult.data[0];
|
||||
const appleUpc = appleAlbum.attributes.upc;
|
||||
|
||||
const spotifyUpc = spotiResult.external_ids.upc;
|
||||
|
||||
if (appleUpc !== spotifyUpc) {
|
||||
throw "UPC mismatch :/";
|
||||
}
|
||||
|
||||
const appleISRCs = appleAlbum.relationships.tracks.data.map(a => a.attributes.isrc);
|
||||
const spotifyISRCs = spotiResult.tracks.items.map(a => a.external_ids ? a.external_ids.isrc : null);
|
||||
|
||||
if (appleISRCs.length !== spotifyISRCs.length) {
|
||||
throw "ISRC or something mismatch :/";
|
||||
}
|
||||
|
||||
const a = new URLSearchParams();
|
||||
|
||||
for (let i = 0; i < appleISRCs.length; i++) {
|
||||
const cands = new Set([appleISRCs[i], spotifyISRCs[i]].filter(a => !!a));
|
||||
if (cands.size !== 1) throw "skill issue";
|
||||
const c = Array.from(cands);
|
||||
|
||||
a.append(`isrc${i + 1}`, c[0]);
|
||||
}
|
||||
|
||||
a.append("edit-note", `Data obtained via authenticated APIs from:
|
||||
- Apple Music: https://api.music.apple.com/v1/catalog/us/albums/${APM_ID}
|
||||
- Spotify: https://api.spotify.com/v1/albums/${SPT_ID}?market=US`);
|
||||
|
||||
|
||||
console.log("UPC: " + appleUpc);
|
||||
console.log(`https://magicisrc.kepstin.ca/?${a.toString()}`);
|
||||
|
||||
console.log("\n\n");
|
||||
console.log(`Data obtained via authenticated APIs from:
|
||||
- Apple Music: https://api.music.apple.com/v1/catalog/us/albums/${APM_ID}
|
||||
- Spotify: https://api.spotify.com/v1/albums/${SPT_ID}?market=US`)
|
||||
0
tools/views/isrcFiller/main.ejs
Normal file
0
tools/views/isrcFiller/main.ejs
Normal file
Reference in New Issue
Block a user