Puppeteer 中文文档v25.8.0

ElementHandle.waitForSelector() 方法

等待与给定选择器匹配的元素出现在当前元素中。

Frame.waitForSelector() 不同,此方法在跨导航时或元素从 DOM 中分离时无法工作。

签名

class ElementHandle {
  waitForSelector<Selector extends string>(
    selector: Selector,
    options?: WaitForSelectorOptions,
  ): Promise<ElementHandle<NodeFor<Selector>> | null>;
}

参数

参数

类型

说明

selector

Selector

要查询并等待的选择器。

options

WaitForSelectorOptions

(可选) 用于自定义等待行为的选项。

返回值:

Promise<ElementHandle<NodeFor<Selector>> | null>

与给定选择器匹配的元素。

异常

如果与给定选择器匹配的元素没有出现,则抛出错误。

示例

import puppeteer from 'puppeteer';

const browser = await puppeteer.launch();
const page = await browser.newPage();
let currentURL;
page
  .mainFrame()
  .waitForSelector('img')
  .then(() => console.log('First URL with image: ' + currentURL));

for (currentURL of [
  'https://example.com',
  'https://google.com',
  'https://bbc.com',
]) {
  await page.goto(currentURL);
}
await browser.close();