javascript - 这个元素存在吗?
问题描述
我想知道我正在用 puppeteer 抓取的页面上是否存在一个元素。我在此函数中使用此代码,但它不起作用:
let build = await page.evaluate(() =>{
let rune = document.querySelector('#selector') == null ? false : document.querySelector('#selector').src
return rune;
})
它总是返回 false,即使元素存在并且应该返回 true。
解决方案
您应该异步调用 await 函数。可能它在加载之前调用函数。
(async () => {
let build = await page.evaluate(() =>{
let rune = document.querySelector('#selector') == null ? false : document.querySelector('#selector').src
return rune;
})
})();
推荐阅读
- android - 如何使用 kotlin 在 Tab 布局中显示 recyclerview?
- ios - Xcode 9 swift 4 几个viewController的动态可重用标头
- python - 火花读取文件不包括模式
- android - 如何将视图保存到文件或本地数据库?
- excel - 带有换行符的 Excel 单元格。带有日期值的选项卡
- android - 后台可绘制的xml箭头不起作用
- sql - 如何在语句中获取与 OR 一起使用的索引
- aws-lambda - aws lambda 的 Swagger 架构
- javascript - XMLHttpRequest url 包含 (&)
- file - 从 Step 文件中提取几何图形