Open comTg opened 2 years ago
// 保存pdf
await page.pdf({
path: "puppeteer.pdf",
format: "a2",
});
// 截图
await page.screenshot({
path: 'test.png'
});
const dimensions = await page.evaluate(() => {
return {
width: document.documentElement.clientWidth,
height: document.documentElement.clientHeight,
deviceScaleFactor: window.devicePixelRatio,
};
});
const links = await page.evaluate((resultsSelector) => {
const anchors = Array.from(document.querySelectorAll(resultsSelector));
return anchors.map((anchor) => {
const title = anchor.textContent.split("|")[0].trim();
return `${title} - ${anchor.href}`;
});
}, resultsSelector);
await page.type(".devsite-search-field", "Headless Chrome"); // 输入框中填入内容
// 按Enter键
await page.keyboard.press("Enter");
// 等待结果返回
const resultsSelector = ".gsc-result .gs-title";
await page.waitForSelector(resultsSelector);
安装
注意
.npmrc
中配置PUPPETEER_SKIP_DOWNLOAD=true
可跳过chromium的安装使用
初始化
打开页面
等待特定选择器显示
输入内容
按键
鼠标操作
// 如何获取元素x y 坐标值 let element = await page.$("");
let box = await element.boundingBox();
elementHandle.boundingBox() returns: <Promise<?Object>> x 元素的 x 坐标(以像素为单位)。
y 元素的 y 坐标(以像素为单位)。
width 元素的像素宽度。
height 元素的像素高度。
//