Legacy Puppeteer scraper fails: XPath queries trigger error ‘page.$x is not a function’ even after selector updates. How can this be fixed?
const engine = require('puppeteer');
async function startCrawl() {
const instance = await engine.launch({ headless: true });
const tab = await instance.newPage();
try {
const nodes = await tab.$x('//span[contains(@class, "sample-item")]');
console.log('Nodes:', nodes);
} catch (error) {
console.error('XPath error:', error);
}
await instance.close();
}
startCrawl();