node.js – 在创建屏幕截图之前,是否可以使用puppeteer修改DOM中的元素?

前端之家收集整理的这篇文章主要介绍了node.js – 在创建屏幕截图之前,是否可以使用puppeteer修改DOM中的元素?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我是新的木偶操作者,但对javascript和Node.js相当满意,但遇到了一个问题,我发现了一个相当简单的Node进程来捕获截图.在获取屏幕截图之前,是否可以使用puppeteer更改HTML元素的innerText?

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

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

  1. const puppeteer = require('puppeteer');
  2. (async () => {
  3. const browser = await puppeteer.launch()
  4. const page = await browser.newPage()
  5. await page.goto('https://google.com')
  6. await page.screenshot({path: 'google.png'})
  7. await browser.close()
  8. })()

所以在这个例子中,我有兴趣知道我是否可以更改元素的文本内容,例如ID为’lga’的div …例如添加文本字符串.

木偶戏有可能吗?

否则,它工作得很好,我只需要在页面中插入一些文本我正在执行截图.我只在ubuntu 16.04机器上使用命令行,而节点版本9,puppeteer版本1.0.0

最佳答案
你可以在屏幕前做到这一点

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

猜你在找的Linux相关文章