Brz odgovor curl ili Axios obično je jedan resurs. Puppeteer može dohvatiti i skripte, slike, okvire i API-je sa više hostova i čekati kasniju prekretnicu stranice.

Pošto je proxy već konfigurisan na postojećoj stranici, posmatrajte pojedinačne neuspehe tokom navigacije:

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

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

Pokrenite ovo u asinhronom toku rada sa stvarnim targetUrl. Primer čeka DOMContentLoaded, što je ranije od završetka svake potrebne slike ili kasnijeg odgovora aplikacije. Uporedite tu prekretnicu sa onom koju je čekala originalna navigacija: glavni dokument, DOM, load ili mrežno mirovanje različiti su ishodi.

Odgovor 403 ili 500 nije događaj requestfailed. Čitajte status i kroz HTTPResponse.

Iskoristite zapažanja da prepoznate spor ili odbijen resurs, ponovljenu autentifikaciju ili kasniji uslov čekanja. Duži tajmaut samo produžava čekanje; ne smanjuje rad pregledača niti dokazuje da je svaka veza sa resursom prihvaćena.

Povezani članci