Javascript Can';t使用Puppeter从DOM对象变量获取元素

Javascript Can';t使用Puppeter从DOM对象变量获取元素,javascript,dom,web-scraping,puppeteer,Javascript,Dom,Web Scraping,Puppeteer,我正试着通过木偶演员做一些基本的拼凑。特别是,我想在以下布局中提取foodiv的文本内容: <div class="foobar"> <div class="foo">…</div> </div> 但是,我想从包含DOM对象的变量中提取元素。在阅读中,我希望这会产生同样的结果: const foobar = page.$('.foobar'); const [bar] = await Promise.all([foobar]); const

我正试着通过木偶演员做一些基本的拼凑。特别是,我想在以下布局中提取
foo
div的文本内容:

<div class="foobar">
  <div class="foo">…</div>
</div>
但是,我想从包含DOM对象的变量中提取元素。在阅读中,我希望这会产生同样的结果:

const foobar = page.$('.foobar');
const [bar] = await Promise.all([foobar]);
const foo = bar.$eval('.foo', (el => el.textContent));
console.log(foo);
然而,我从
控制台.log(foo)
得到的只是

承诺{}

脚本挂起,或者如果我关闭Puppeter浏览器,它将失败

未处理的PromisejectionWarning:未处理的承诺拒绝


我错过了什么?

看起来你错过了
wait

应该是:

const foo = await bar.$eval('.foo', (el => el.textContent));

Try
const foo=wait bar.$eval('.foo')
@ChrisG忘记我之前的评论,我用
.text
代替了
.textContent
。行得通,请回答。
const foo = await bar.$eval('.foo', (el => el.textContent));