puppeteer - 如何使用 Puppeteer 在选项卡之间切换?

标签 puppeteer

这是我的用例:

我有一个链接,点击它会打开一个新标签并加载内容。

我在找什么:

有没有办法在新选项卡打开时切换页面的引用或为新选项卡创建引用?

最佳答案

要获取点击链接后打开的页面,您可以收听 popup 事件。当页面打开新选项卡或窗口时发出。

代码示例 (来自上面链接的文档)

const [newPage] = await Promise.all([
    new Promise(resolve => page.once('popup', resolve)),
    page.click('a[target=_blank]'),
]);

这将在等待当前页面打开窗口时单击链接。 newPage将是打开的页面。

替代方法:要获取所有打开页面的列表,您可以使用 browser.pages :

const pages = await browser.pages();
pages将是一个包含所有打开页面的数组。

关于puppeteer - 如何使用 Puppeteer 在选项卡之间切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46390002/

相关文章:

javascript - 单击带有文本属性的 <span/> 未按预期工作

javascript - 如何通过 headless chrome 管理登录 session ?

firebase - Cloud Functions 中的 puppeteer.launch 抛出错误

javascript - 有没有办法一次多次调用 JavaScript 中的函数?使用 puppeteer 师

javascript - 是否可以在 nodejs+puppeteer 中包含一个源文件来添加功能?

node.js - 如何使用 Puppeteer 将(长)文本从剪贴板粘贴到 Textarea

javascript - Puppeteer - 按类删除元素

html-to-pdf - Puppeteer 从多个 HTML 字符串生成 PDF

node.js - 从 puppeteer 到 ffmpeg 的管道截图

node.js - Puppeteer 中的 page.select() 无法按剑道下拉菜单的预期工作