繁体   English   中英

为什么我的 Puppeteer.innerText 代码什么也不返回?

[英]Why Does My Puppeteer .innerText code return nothing?

所以我刚开始学习 puppeteer.js,发生的事情是我的代码运行它没有错误,但它没有向控制台显示任何内容。 (我将 Node.js 用于调试目的)唯一的显示是当我将异步 function 放入另一个 function 时,即使它返回未定义。 我想知道为什么会这样以及如何解决它。

这是我的代码:


(async () =>{

  let movieUrl = 'https://www.imdb.com/title/tt0111161/?ref_=nav_sr_1'

  let browser = await puppeteer.launch();
  let page = await browser.newPage();

  await page.goto(movieUrl, {waitUntil: 'networkidle2'})

  let data = await page.evaluate(() => {
    let title = document.querySelector('div[class="title_wrapper"] > h1').innerText;
    let rating = document.querySelector('span[itemprop="ratingValue"]').innerText;
    let ratingCount = document.querySelector('span[itemprop="ratingCount"]').innerText;
    return{title, rating, ratingCount};
  })

  console.log(data);

  debugger;

  await browser.close();
})

这是一个未命名的异步 function:

async () => {
  // the function code
}

如果你想立即运行它,你需要调用它。 您可以通过将其括在括号中来做到这一点:

(async () => {
  // the function code
})()

这称为 IIFE,立即调用 Function 表达式。 您声明一个 function 并立即运行它。

请参阅这些文章以了解它:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM