Rychlá odpověď curl nebo Axios je obvykle jeden zdroj. Puppeteer může načítat také skripty, obrázky, rámce a API z několika hostitelů a čekat na pozdější fázi stránky.

Když je proxy už nastavená na stávající stránce, sledujte jednotlivá selhání během navigace:

page.on("requestfailed", request => {
  console.log(request.url(), request.failure()?.errorText);
});

await page.goto(targetUrl, {
  waitUntil: "domcontentloaded",
  timeout: 30000,
});

Spusťte to v asynchronním pracovním postupu se skutečnou targetUrl. Příklad čeká na DOMContentLoaded, což je dříve než dokončení každého potřebného obrázku nebo pozdější odpovědi aplikace. Porovnejte tuto fázi s tou, na kterou čekala původní navigace: hlavní dokument, DOM, load nebo síťový klid jsou různé výsledky.

Odpověď 403 nebo 500 není událost requestfailed. Čtěte stav také přes HTTPResponse.

Z pozorování určete pomalý nebo odmítnutý zdroj, opakovanou autentizaci nebo pozdější čekací podmínku. Delší časový limit jen prodlužuje čekání; nesnižuje práci prohlížeče ani nedokazuje, že každé připojení ke zdroji bylo přijato.

Související články