J'essaie de passer une variable dans une page.evaluate()
fonction dans Puppeteer , mais lorsque j'utilise l'exemple très simplifié suivant, la variable evalVar
n'est pas définie.
Je suis nouveau sur Puppeteer et je ne trouve aucun exemple sur lequel s'appuyer, j'ai donc besoin d'aide pour transmettre cette variable dans la page.evaluate()
fonction afin de pouvoir l'utiliser à l'intérieur.
const puppeteer = require('puppeteer');
(async() => {
const browser = await puppeteer.launch({headless: false});
const page = await browser.newPage();
const evalVar = 'WHUT??';
try {
await page.goto('https://www.google.com.au');
await page.waitForSelector('#fbar');
const links = await page.evaluate((evalVar) => {
console.log('evalVar:', evalVar); // appears undefined
const urls = [];
hrefs = document.querySelectorAll('#fbar #fsl a');
hrefs.forEach(function(el) {
urls.push(el.href);
});
return urls;
})
console.log('links:', links);
} catch (err) {
console.log('ERR:', err.message);
} finally {
// browser.close();
}
})();