...
let wine = wineLinks[i];
console.log(wine);
let winePage = await browser.newPage();
await winePage.goto(wine.link, {waitUntil: "domcontentloaded"});
const alcohol = await winePage.evaluate(() => document.querySelector("div.wrap div#wine-page-lower-section div.vintagePage__bottom--1fcqg div.inner div:nth-child(5) table tbody tr:nth-child(5) td span").textContent);
console.log(alcohol);
但是,它显示以下错误:
错误[TypeError]:无法读取null的属性(阅读“textContent”)
当在浏览器中测试上述选择器时,它返回了我需要的内容。有什么建议我可能做错了吗?
1条答案
按热度按时间xpcnnkqh1#
你可以通过多次滚动来加载页面的所有内容,因为在你向下滚动几个点后,页面的一部分会被加载。但是这是不必要的,因为所有的信息都是用
window.__PRELOADED_STATE__
加载的,你可以只评估它并获得任何你喜欢的信息,看看下面的代码。代码:
更新:您需要检查
alcohol
字段是否存在,因为在某些页面上它不存在。下面代码的Result。