google-chrome - 如何从控制台调用 Chrome 节点截图

标签 google-chrome google-chrome-devtools puppeteer

我知道您可以通过命令提示符捕获单个 html 节点,但是是否可以从类似于 Puppeteer 的控制台以编程方式执行此操作?我想循环页面上的所有元素并为偶尔的一次性项目捕获它们,我不想在 puppeteer 中设置完整的身份验证过程。

我指的是这个功能:
enter image description here

但是从控制台执行,例如在 foreach 或类似的过程中。

See the puppeteer reference here.

有这样的效果:$x("//*[contains(@class, 'special-class-name')]").forEach((el)=> el.screenshot())

最佳答案

我刚刚制作了一个脚本,它对谷歌主页中的每个提交按钮进行截图。只需看看并从中汲取一些灵感。

const puppeteer = require('puppeteer')

;(async () => {
    const browser = await puppeteer.launch({
        headless:false,
        defaultViewport:null,
        devtools: true,
        args: ['--window-size=1920,1170','--window-position=0,0']
    })

    const page = (await browser.pages())[0]

    const open = await page.goto ( 'https://www.google.com' )

    const submit = await page.$$('input[type="submit"]')

    const length = submit.length

    let num = 0

    const shot = submit.forEach( async elemHandle => {
        num++
        await elemHandle.screenshot({
            path : `${Date.now()}_${num}.png`
        })
    })

})()

关于google-chrome - 如何从控制台调用 Chrome 节点截图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50715164/

相关文章:

javascript - 检测脚本是否已经加载

html - 在 Chrome PDF 查看器中加载时 PDF 链接卡住

javascript - 在 Puppeteer 中使用 page.$eval() 时如何将变量放入浏览器上下文中?

dart - 使用 puppeteer 获取源 html

javascript - Puppeteer:在 waitForSelector 处理程序中与 dom 交互

javascript - 在选项卡处于后台时使用 d3.js 绘制 SVG

html - 使用媒体查询隐藏表格单元格会在 Chrome 中导致意外结果,但如果您重新加载页面就可以了

javascript - 查找写入网页的随机 HTML 标签的来源

javascript - 如何快速找到绝对定位的子元素的相对定位的 HTML 父元素?

javascript - 从 Devtools 窗口将 Chrome 选项卡置于前台