let d = imagesArr[0].dataset.url; let script = ` new Promise(async (resolve, reject) => { try { let images = []; const data = "${d}"; for(const d of data) { const canvas = await imgReverser(d); const uri = canvas.toDataURL('image/jpeg', ${quality}); let newP = document.createElement('img'); newP.src = uri; newP.classList.add('asdfasdf'); document.body.appendChild(newP); } resolve(images); } catch(error) { reject(error); } }); `; let virtualConsole = new jsdom.VirtualConsole(); virtualConsole.on("error", () => { // No-op to skip console errors. }) //virtualConsole.sendTo(console); const newDOM = await JSDOM.fromURL(requestChapter.url.href, { runScripts: "dangerously", resources: "usable", virtualConsole }); const scriptElement = newDOM.window.document.createElement('script'); scriptElement.textContent = script; newDOM.window.document.body.appendChild(scriptElement); return newDOM.window.document.body.innerHTML;