javascript - 使用 puppeteer 检测 DOM 中的变化 _ MutationObserver 正在工作
问题描述
我写了一个基于 MutationObServer 的函数:
module.exports.crawler = async(page, link)=>{
try {
await page.goto(link, { waitUntil: 'networkidle2' })
await page.waitForSelector('#dbp')
await page.waitForTimeout(10000)
await page.exposeFunction('puppeteerLogMutation', () => {
console.log('Mutation Detected: A child node has been added or removed.');
});
tables = await page.evaluate(async()=>{
target = document.querySelector("#d02");
const observer = new MutationObserver( mutations => {
console.log(mutations)
});
observer.observe(target, { childList: true });
return data
})
console.log(tables)
await page.close()
} catch (error) {
console.log(error)
}
目标变量每 20 秒变化一次。我想检测变化。但这不起作用。有什么想法吗?
解决方案
推荐阅读
- typescript - 在 rxjs 中合并事件(Nestjs - saga cqrs)
- python - 如何获取分组和重复值的所有“第一个”实例?
- javascript - node_modules select2 用 startMatcher 替换 WrappedMatcher
- spring-boot - DerInputStream.getLength():lengthTag=109,安装 ssl 的 java IOException 太大
- javascript - 如何从 curl API 连续填充 HTML 文本框
- javascript - LitElement:javascript函数重复运行
- python - 使用 Python 对带有间隙的数字序列重新编号
- python - 为什么多边形的形状会在jupyter中重置内核
- python - 如何在 pytest 测试中模拟 elasticsearch 对象?
- python - 在带有硒的表中选择复选框