Akses pembolehubah tetingkap javascript dalam Puppeteer
<p>Dalam skrip Puppeteer saya, saya menggunakan fail JS untuk melaksanakan sebelum memuatkan halaman: </p>
<pre class="brush:js;toolbar:false;">const preloadFile = fs.readFileSync('./file.js', 'utf8');
const id = tunggu page.evaluateOnNewDocument(preloadFile);
</pra>
<p>file.js mengandungi: </p>
<pre class="brush:js;toolbar:false;">const i = setInterval(()=>{
if (window.turnstile) {
clearInterval(i)
window.turnstile.render = (a,b) =>
b.userAgent = navigator.userAgent
window.tsCallback = b.panggilan balik
tingkap.tindakan = b.tindakan
window.data = b.cData
console.log(b)
kembalikan 'foo'
}
}
},50)
</pra>
<p>Skrip ini mencetak objek (Tindakan, Cdata, Panggilan Balik...) pada konsol penyemak imbas</p>
<p>Saya mahu mendapatkan objek ini dari sisi boneka dan boleh memanggil panggilan balik fungsi(). </p>
<p>Saya menggunakan page.evaluate() tetapi ia tidak berkesan untuk saya</p>