📜  puppeteer 获取 div 的值 - Javascript (1)

📅  最后修改于: 2023-12-03 15:03:53.385000             🧑  作者: Mango

使用Puppeteer获取DIV的值

Puppeteer是一个Node.js库,提供了一个高级的API来控制 Chrome 或 Chromium 给你提供的一整套功能,比如导航、截图、表单提交、DOM操作等等,非常适合用来进行自动化测试或爬虫。

在这篇文章中,我们将使用Puppeteer来获取一个页面中的某个div的值。步骤如下:

安装Puppeteer

使用 npm 包管理器来安装 puppeteer:

npm i puppeteer
打开浏览器

使用Puppeteer的launch方法来打开一个浏览器实例:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  // ...
  await browser.close();
})();
打开页面

在浏览器实例中打开一个页面:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('https://example.com');
  // ...
  await browser.close();
})();
获取DIV的值

使用Puppeteer的evaluate方法来执行JavaScript并返回结果:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('https://example.com');

  const divValue = await page.evaluate(() => {
    return document.querySelector('#my-div').textContent;
  });

  console.log(divValue); // 输出DIV的值
  await browser.close();
})();

在上面的代码中,我们使用document.querySelector方法来获取我们需要的DIV元素,然后获取该DIV的文本内容。

最终,使用console.log方法来输出DIV的值。

完整代码

下面是完整的代码示例:

const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const page = await browser.newPage();
  await page.goto('https://example.com');

  const divValue = await page.evaluate(() => {
    return document.querySelector('#my-div').textContent;
  });

  console.log(divValue);
  await browser.close();
})();

以上就是使用Puppeteer获取DIV的值的全部步骤和示例代码。