const dnsList = require('./client/src/utils/dns-list.json'); console.log(dnsList); // for each make a request to https://go-acme.github.io/lego/dns/{dns}/#credentials let finalList = {}; let i = 0; (async () => { for(const dns of dnsList) { console.log(`Fetching ${dns} infos`) let result = (await (await fetch(`https://go-acme.github.io/lego/dns/${dns}/#credentials`)).text()); result = result.split(`

Credentials

`)[1]; result = result.split(``)[0] + ``; let vars = result.match(/(.*?)<\/code>/g); vars = vars.map(v => v.replace(/<\/?code>/g, '')); finalList[dns] = { name: dns, url: `https://go-acme.github.io/lego/dns/${dns}/#credentials`, docs: result, vars: vars } console.log(`${i++}/${dnsList.length} done`) } // save to file const fs = require('fs'); fs.writeFileSync('./client/src/utils/dns-config.json', JSON.stringify(finalList, null, 2)); })();