Hiter odgovor curl ali Axios je običajno en vir. Puppeteer lahko pridobi tudi skripte, slike, okvire in API-je z več gostiteljev ter čaka na poznejši mejnik strani.

Ker je proxy že nastavljen na obstoječi strani, opazujte posamezne neuspehe med navigacijo:

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

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

Zaženite to v asinhronem poteku dela s pravim targetUrl. Primer čaka na DOMContentLoaded, ki nastopi prej kot dokončanje vsake potrebne slike ali poznejšega odgovora aplikacije. Primerjajte ta mejnik s tistim, na katerega je čakala prvotna navigacija: glavni dokument, DOM, load ali omrežni mir so različni izidi.

Odgovor 403 ali 500 ni dogodek requestfailed. Status preberite tudi prek HTTPResponse.

Uporabite opažanja za prepoznavanje počasnega ali zavrnjenega vira, ponavljajoče se overitve ali poznejšega pogoja čakanja. Daljša časovna omejitev le podaljša čakanje; ne zmanjša dela brskalnika in ne dokazuje, da je bila vsaka povezava z virom sprejeta.

Sorodni članki