1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| // adapté pour https://www.developpez.net/forums/showthread.php?t=2128686
const fs = require("fs");
// quelques constantes
const DIR_FILES = "./nft-json-files/";
const DIR_SAVES = "./nft-json-files-save/";
const STR_IMAGE = "https://www.pixl-art.fr/nft/iceCube/";
function saveData(file, data) {
const nomFichier = `${DIR_SAVES}${file}`;
const strData = JSON.stringify(data, null, 2);
fs.writeFile(nomFichier, strData, function(error) {
if (error) {
console.error("Erreur sauvegarde :", error.message);
}
else {
console.log("Sauvegarde de", file);
}
})
}
function traiteFiles(chemin) {
fs.readdir(chemin, function(error, files) {
if (error) {
console.error("Erreur lecture répertoire :" + error);
}
files.forEach(function(file) {
// si fichier .json
if (file.match(/\.json+$/)) {
console.log("Traitement de", file);
const reponse = fs.readFileSync(DIR_FILES + file, "utf8");
const data = JSON.parse(reponse);
// un minimum de vérif.
if (data.tokenId && !data.image) {
data.image = `${STR_IMAGE}${data.tokenId}.png`;
saveData(file, data);
}
}
});
// affiche info
console.log("%d fichier(s) traité(s)", files.length);
});
}
// lance la récup. et traitement des fichiers
traiteFiles(DIR_FILES); |
Partager