Puppeteer

開發者

自動化瀏覽器並測試網頁應用 — Neotask 透過 OpenClaw 為您自動化 Puppeteer。

您可以做什麼

生成 Puppeteer 腳本

描述您想自動化的內容,Neotask 撰寫完整的 Puppeteer 腳本——導覽、元素選取、表單填寫、點擊序列、螢幕截圖擷取和資料提取。取得具有適當錯誤處理和等待策略的生產就緒 Node.js 程式碼。

偵錯自動化失敗

貼上失敗的 Puppeteer 腳本或錯誤訊息,Neotask 診斷問題:過時的元素引用、競態條件、選擇器變更、導覽超時不匹配或缺少 await 關鍵字。取得修正後的腳本和問題解釋。

建構抓取管線

請 Neotask 撰寫處理分頁、延遲載入內容、無限滾動或動態渲染 JavaScript 頁面的 Puppeteer 抓取器。產生的腳本乾淨地處理 waitForSelector、networkidle 條件和結構化資料提取。

自動化表單提交

描述多步驟表單工作流程——登入、填寫欄位、上傳檔案、提交並確認——Neotask 生成自動化整個序列的 Puppeteer 腳本,包括處理模態對話框和檔案選擇提示。

擷取視覺快照

生成進行全頁螢幕截圖、擷取特定元素區域或將頁面渲染為 PDF 的 Puppeteer 腳本。適用於視覺回歸測試、封存或從網頁渲染內容生成一致的文件匯出。

試試這樣問

  • "撰寫登入 GitHub、導覽到我的儲存庫並提取所有儲存庫名稱及星數列表的 Puppeteer 腳本"
  • "我的 Puppeteer 選擇器 .product-price 停止工作了——這是錯誤:[貼上錯誤]。什麼改變了,如何修復?"
  • "生成抓取此部落格前 5 頁所有文章的 Puppeteer 腳本,包含標題、日期和 URL"
  • "撰寫用測試資料填寫此結帳表單並在每一步擷取螢幕截圖的 Puppeteer 腳本"
  • "建立每 10 分鐘監控產品頁面並在價格低於 50 美元時發送警報的 Puppeteer 腳本"
  • "如何在 Puppeteer 中處理檔案上傳對話框?寫一個範例給我"
  • "將此 Selenium 腳本轉換為 Puppeteer 並使用適當的等待條件使其更可靠"
  • "撰寫為此清單中每個 URL 生成 PDF 的 Puppeteer 腳本"
  • 進階技巧

  • 始終使用 waitForSelector 而非固定延遲 ——請 Neotask 將任何 page.waitForTimeout() 呼叫替換為 page.waitForSelector() 或 page.waitForNetworkIdle();基於時間的等待是不穩定自動化最常見的原因。
  • 請求攔截加速 ——抓取時請 Neotask 添加阻止圖片、字型和分析腳本的請求攔截;頁面載入快 3-5 倍,您取得需要的資料而不浪費頻寬。
  • 無頭新模式 ——Puppeteer 的 headless: 'new' 模式與舊版無頭行為不同;請 Neotask 指定腳本針對哪個模式以避免偵測差異。
  • 錯誤恢復模式 ——要求在導覽失敗時重試並回退到更短超時而非崩潰的腳本;Neotask 自動添加帶有合理重試邏輯的 try/catch。
  • 元素控制代碼 vs evaluate ——對於複雜的資料提取,請 Neotask 使用 page.evaluate() 進行批量 DOM 存取而非逐元素的控制代碼操作;這快得多。
  • 失敗時截圖 ——請 Neotask 為每個腳本添加異常時截圖區塊;這使偵錯容易 10 倍,因為您可以看到腳本失敗時頁面的確切狀態。
  • Works Well With