let data = []; let mandates = document.querySelectorAll(".mandate-party"); mandates.forEach(mandate => { const [match, count, sign, diff] = /(\d+) \((.)(\d+)\)/.exec(mandate.querySelector(".mandate-num").textContent); const party = mandate.querySelector("abbr").textContent; const change = (sign === "-" ? -1 : 1) * parseInt(diff); data.push({ name: party, mandate: parseInt(count), mandate_plusminus: change, mandate_plusminusText: (change === 0 ? "±0" : `${change < 0 ? "-" : "+"}${Math.abs(change)}`), }); }); copy(`"${(/(\d+)\.html$/.exec(document.location))[1]}00": ` + JSON.stringify(data.filter(party => party.mandate > 0), null, 4));