我遇到一个问题,其中我没有一个相当简单的Node进程来捕获屏幕截图。是否可以在获取屏幕截图之前使用Puppeteer更改HTML元素的innerText

我已经成功使用Puppeteer在身份验证字段中键入文本并登录了站点,但是我想知道是否有类似的方法可以让我更改特定元素中的文本(使用ID或类名)。

我正在使用的屏幕捕获代码示例:

const puppeteer = require('puppeteer');
 (async () => {
    const browser = await puppeteer.launch()
    const page = await browser.newPage()
    await page.goto('https://google.com')
    await page.screenshot({path: 'google.png'})
    await browser.close()
 })()

在此示例中,我想知道是否可以更改ID为'lga'的div等元素的文本内容,例如添加文本字符串。

puppeteer 戏有可能吗?

否则,它会很棒。我只需要在要执行屏幕截图的页面中插入一些文本即可。我仅在Ubuntu 16.04计算机和Node版本9,Puppeteer版本1.0.0上使用命令行。

最佳答案

你可以在屏幕前做

 await page.evaluate(() => {
    let dom = document.querySelector('#id');
    dom.innerHTML = "change to something"
 });

关于javascript - 创建屏幕截图之前,可以使用Puppeteer修改DOM中的元素吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48513066/

10-16 06:02