有一个浏览器扩展可以修改页面并将它自己的 html 代码插入其中,我得到了正在检查的页面的 html 代码,但是来自扩展的 html 代码注入并没有进入它,尽管如果你运行签入浏览器,然后有一个注入。
那些。渲染页面后,扩展在页面内部集成了一个块:
<div><div class="notification"><div class="notification__close"></div> <div class="notification__logo"></div> <div class="notification__title">
</div> <div class="notification__cta">
Activate
</div></div> <!----></div>
当试图捕捉这个块时,puppeteer 没有找到它:
let browser = await puppeteer.launch ({
headless: false,
ignoreDefaultArgs: true,
args: [
`--load-extension = $ {path.join (dir, '/extension')},`
]
});
let page = await browser.newPage ();
await page.goto ('https://site.url', {waitUntil: 'networkidle2'});
await page.waitForSelector ('.notification__cta');
await page.click ('.notification__cta');
尝试查找项目时出现超时转储:: Timeout - 在 jest.setTimeout 指定的 30000 毫秒超时内未调用异步回调。超时 - 在 jest.setTimeout.Error 指定的 30000 毫秒超时内未调用异步回调:
如果您查看存储在页面中的 html,则通知块不会到达那里......也许有人会知道我如何使用 puppeteer 跟踪 html 注入并操纵它们?