📅  最后修改于: 2023-12-03 15:03:53.385000             🧑  作者: Mango
Puppeteer是一个Node.js库,提供了一个高级的API来控制 Chrome 或 Chromium 给你提供的一整套功能,比如导航、截图、表单提交、DOM操作等等,非常适合用来进行自动化测试或爬虫。
在这篇文章中,我们将使用Puppeteer来获取一个页面中的某个div的值。步骤如下:
使用 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();
})();
使用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的值的全部步骤和示例代码。