木偶師
puppeteer-core:
Puppeteer 是一個 JavaScript 函式庫,它提供進階 API 來透過 DevTools 協定或 WebDriver BiDi 控制 Chrome 或 Firefox。 Puppeteer 預設以無頭方式運作(沒有可見的 UI)
npm i puppeteer # 在安裝過程中下載相容的 Chrome。
import puppeteer from 'puppeteer';// 或import puppeteer from 'puppeteer-core';// 啟動瀏覽器並開啟新的空白頁 const browser = wait puppeteer.launch();const page = wait browser.newPage() ;/ / 導覽頁面到某個URL.await page.goto('https://developer.chrome.com/');// 設定螢幕尺寸.await page.setViewport({width: 1080, height: 1024}) ;/ / 在搜尋框中輸入內容.await page.locator('.devsite-search-field').fill('automate Beyond recorder');// 等待並點選第一個結果.await page.locator( '.devsite-result- item-link').click();// 使用唯一的字串定位完整標題.const textSelector = wait page .locator('text/Customize andautomate') .waitHandle();const fullTitle = wait textSelector?.evaluate (el => el.textContent);// 印出完整的 title.console.log('這篇博文的標題是 "%s".', fullTitle);await browser.close();