跳至主要內容
版本: 23.11.1

瀏覽器類別

Browser 代表一個瀏覽器實例,它可以是透過 Puppeteer.connect() 連接的,或是由 PuppeteerNode.launch() 啟動的。

Browser 發出 多種事件,這些事件記錄在 BrowserEvent 列舉中。

簽名

export declare abstract class Browser extends EventEmitter<BrowserEvents>

繼承自: EventEmitter<BrowserEvents>

備註

此類別的建構子被標記為內部使用。第三方程式碼不應直接呼叫建構子或建立繼承自 Browser 類別的子類別。

範例 1

使用 Browser 建立 Page

import puppeteer from 'puppeteer';

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

範例 2

斷開連線並重新連接到 Browser

import puppeteer from 'puppeteer';

const browser = await puppeteer.launch();
// Store the endpoint to be able to reconnect to the browser.
const browserWSEndpoint = browser.wsEndpoint();
// Disconnect puppeteer from the browser.
await browser.disconnect();

// Use the endpoint to reestablish a connection
const browser2 = await puppeteer.connect({browserWSEndpoint});
// Close the browser.
await browser2.close();

屬性

屬性

修飾詞

類型

描述

connected

唯讀

布林值

Puppeteer 是否已連接到此瀏覽器

debugInfo

唯讀

DebugInfo

(實驗性) 從 Puppeteer 取得除錯資訊。

備註

目前,包含擱置的協定呼叫。未來,我們可能會加入更多資訊。

方法

方法

修飾詞

描述

browserContexts()

取得開啟的 瀏覽器內容 的清單。

在新建的 瀏覽器 中,這將返回 BrowserContext 的單一實例。

close()

關閉此 瀏覽器 和所有相關聯的 頁面

cookies()

傳回預設 BrowserContext 中的所有 Cookie。

備註

這是 browser.defaultBrowserContext().cookies() 的快捷方式。

createBrowserContext(options)

建立新的 瀏覽器內容

這不會與其他 瀏覽器內容 共用 Cookie/快取。

defaultBrowserContext()

取得預設的 瀏覽器內容

備註

預設的 瀏覽器內容 無法關閉。

deleteCookie(cookies)

從預設 BrowserContext 中移除 Cookie。

備註

這是 browser.defaultBrowserContext().deleteCookie() 的快捷方式。

disconnect()

斷開 Puppeteer 與此 瀏覽器 的連線,但讓程序保持執行。

isConnected()

已棄用

Puppeteer 是否已連接到此瀏覽器

已棄用

請使用 Browser.connected

newPage()

預設瀏覽器內容中建立新的頁面

pages()

取得此 瀏覽器 中所有已開啟的 頁面 的清單。

如果有多个瀏覽器內容,則會傳回所有瀏覽器內容中的所有頁面

備註

非可見的 頁面,例如 "background_page",不會在此列出。您可以使用 Target.page() 找到它們。

process()

取得相關聯的 ChildProcess

setCookie(cookies)

在預設 BrowserContext 中設定 Cookie。

備註

這是 browser.defaultBrowserContext().setCookie() 的快捷方式。

target()

取得與預設瀏覽器內容相關聯的目標

targets()

取得所有活動的 目標

如果有多个 瀏覽器內容,則會傳回所有 瀏覽器內容 中的所有 目標

userAgent()

取得此 瀏覽器 的原始使用者代理程式。

頁面 可以使用 Page.setUserAgent() 覆寫使用者代理程式。

version()

取得表示此 瀏覽器 名稱和版本的字串。

對於無頭瀏覽器,這類似於 "HeadlessChrome/61.0.3153.0"。對於非無頭或新無頭瀏覽器,這類似於 "Chrome/61.0.3153.0"。對於 Firefox,它類似於 "Firefox/116.0a1"

Browser.version() 的格式可能會隨著瀏覽器未來的版本而變更。

waitForTarget(predicate, options)

等待直到出現符合指定 predicate目標 並傳回它。

這將會查看所有已開啟的 瀏覽器內容

wsEndpoint()

取得連線到此 瀏覽器 的 WebSocket URL。

這通常與 Puppeteer.connect() 一起使用。

您可以從 http://HOST:PORT/json/version 找到除錯器 URL (webSocketDebuggerUrl)。

請參閱 瀏覽器端點 以取得更多資訊。

備註

格式始終為 ws://HOST:PORT/devtools/browser/<id>