En timeout på waitForSelector betyder att det förväntade elementet inte uppfyllde sitt väntevillkor. Att lägga till en proxy innan det dök upp bevisar inte att proxyns TCP-anslutning har tajmat ut.

  1. Spara navigeringsbevisen. Notera den slutliga URL:en, statusen för huvudsvar och de relevanta misslyckade förfrågningarna före väntan på selektorn. I Puppeteer kastas inte ett HTTP-felsvar nödvändigtvis som ett navigeringsundantag.
  2. Granska det levererade dokumentet. Dess titel eller en noggrant maskad skärmbild kan avslöja en inloggningsutmaning, en sida med nekad åtkomst eller en annan regional sida. Den avsedda sidan kan också ha haft misslyckade applikationsförfrågningar; kontrollera även selektorn och ramen.
  3. Hantera varje utmaning vid dess källa. Konfigurera proxyautentisering som stöds före navigeringen vid en proxyutmaning. En destinationsutmaning tillhör applikationens auktoriserade arbetsflöde och har egna autentiseringsuppgifter.

Detta avslöjar ofta användbara bevis som fanns innan elementväntan blev det första undantaget som din kod rapporterade. Att ge proxyn ett webbplatslösenord kan inte rätta till det tidigare dokumentet.

Välj timern efter att du har identifierat den misslyckade operationen. Navigering, nätverksuppsättning och elementväntor har olika gränser. Ett verkligt långsamt gränssnitt kan motivera en längre selektorväntan; en felsida kommer dock att förbli fel dokument.

Håll webbläsarsessionen och rutten stabila medan du jämför. Att ändra proxyn, selektorn och hela webbläsartillståndet i ett försök döljer vilket villkor som spelade roll.

Relaterade artiklar