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

$$ eval返回未定义。在pupeteer js

IT培训 admin 3浏览 0评论

$$ eval返回未定义。在pupeteer js

我目前正在尝试获取HTML文件的img src,但遇到了问题。我不确定如何去做。让我解释一下:

我在html页面中有几个这样的div:

<div class="photo-tile photo-tile-small"><img class="photo-tile-image" src=".jpg"></div>

我正在尝试获取所有页面的src。在此处的示例中为:.jpg“如果页面上有10个,我要全部10个。

使用人偶js,这是我尝试尝试的代码:(并非全部只是相关部分):

  const getImgSrc = await page.$$eval('.photo-tile-image', img => img);
  console.log(getImgSrc);

这将返回“未定义”。我对此的理解(我确定我错了)是在这里$$。eval正在评估此元素的每个实例(称为“ .photo-tile-image”),它将返回该元素的属性,在这种情况下,将从此处将其称为img,我希望它注销结果在console.log(getImgSrc)

通过这一点,我将如何获得img.src

回答如下:

要传递给$$eval的函数的参数不是图像,而是图像数组。

因此,从那里,您可以做:

const getImgSrc = await page.$$eval('.photo-tile-image', imgs => imgs.map(img => img.src));
console.log(getImgSrc);

$$ eval返回未定义。在pupeteer js

我目前正在尝试获取HTML文件的img src,但遇到了问题。我不确定如何去做。让我解释一下:

我在html页面中有几个这样的div:

<div class="photo-tile photo-tile-small"><img class="photo-tile-image" src=".jpg"></div>

我正在尝试获取所有页面的src。在此处的示例中为:.jpg“如果页面上有10个,我要全部10个。

使用人偶js,这是我尝试尝试的代码:(并非全部只是相关部分):

  const getImgSrc = await page.$$eval('.photo-tile-image', img => img);
  console.log(getImgSrc);

这将返回“未定义”。我对此的理解(我确定我错了)是在这里$$。eval正在评估此元素的每个实例(称为“ .photo-tile-image”),它将返回该元素的属性,在这种情况下,将从此处将其称为img,我希望它注销结果在console.log(getImgSrc)

通过这一点,我将如何获得img.src

回答如下:

要传递给$$eval的函数的参数不是图像,而是图像数组。

因此,从那里,您可以做:

const getImgSrc = await page.$$eval('.photo-tile-image', imgs => imgs.map(img => img.src));
console.log(getImgSrc);

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论