最新消息: 电脑我帮您提供丰富的电脑知识,编程学习,软件下载,win7系统下载。

操纵符:从NodeList获取HTML?

IT培训 admin 12浏览 0评论

操纵符:从NodeList获取HTML?

我从代码中得到30个项目的列表:

const boxes = await page.evaluate(() => {
    return document.querySelectorAll("DIV.a-row.dealContainer.dealTile")
})

console.log(boxes);

The result

{ '0': {},
  '1': {},
  '2': {},
  ....
  '28': {},
  '29': {} }

我需要查看元素的html。

但是我尝试过的boxes的每个属性都只是undefined。我尝试了lengthinnerHTML,'innerText`等。

我确定该框确实包含某些内容,因为在我开始“浏览”页面内容之前,操纵up的屏幕截图显示了该内容

我在做什么错?

回答如下:

有多种方法可以做到这一点:

  • 使用page.$$eval执行选择器并一步返回结果。
  • 查询元素后使用page.$$eval获取属性。

page.evaluate的代码示例

page.evaluate

page.$$eval的代码示例

const htmls = await page.$$eval('selector', el => el.innerHTML);

操纵符:从NodeList获取HTML?

我从代码中得到30个项目的列表:

const boxes = await page.evaluate(() => {
    return document.querySelectorAll("DIV.a-row.dealContainer.dealTile")
})

console.log(boxes);

The result

{ '0': {},
  '1': {},
  '2': {},
  ....
  '28': {},
  '29': {} }

我需要查看元素的html。

但是我尝试过的boxes的每个属性都只是undefined。我尝试了lengthinnerHTML,'innerText`等。

我确定该框确实包含某些内容,因为在我开始“浏览”页面内容之前,操纵up的屏幕截图显示了该内容

我在做什么错?

回答如下:

有多种方法可以做到这一点:

  • 使用page.$$eval执行选择器并一步返回结果。
  • 查询元素后使用page.$$eval获取属性。

page.evaluate的代码示例

page.evaluate

page.$$eval的代码示例

const htmls = await page.$$eval('selector', el => el.innerHTML);

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论