Ein Timeout bei waitForSelector bedeutet, dass das erwartete Element seine Wartebedingung nicht erfüllt hat. Ein Proxy, der vor seinem Erscheinen hinzugefügt wurde, belegt nicht, dass die TCP-Verbindung des Proxys abgelaufen ist.

  1. Bewahren Sie die Navigationsbelege auf. Notieren Sie die endgültige URL, den Status der Hauptantwort und die relevanten fehlgeschlagenen Anfragen vor dem Warten auf den Selektor. In Puppeteer wird eine HTTP-Fehlerantwort nicht zwangsläufig als Navigationsausnahme ausgelöst.
  2. Untersuchen Sie das gelieferte Dokument. Sein Titel oder ein sorgfältig geschwärzter Screenshot kann eine Anmeldeaufforderung, eine Seite mit verweigertem Zugriff oder eine andere regionale Seite zeigen. Auch die beabsichtigte Seite kann fehlgeschlagene Anwendungsanfragen gehabt haben; prüfen Sie außerdem den Selektor und das Frame.
  3. Behandeln Sie jede Aufforderung an ihrer Quelle. Konfigurieren Sie bei einer Proxy-Aufforderung die unterstützte Proxy-Authentifizierung vor der Navigation. Eine Ziel-Aufforderung gehört zum autorisierten Arbeitsablauf der Anwendung und hat eigene Anmeldedaten.

Das legt oft brauchbare Belege offen, die bereits existierten, bevor das Element-Warten zur ersten Ausnahme wurde, die Ihr Code meldete. Ein Website-Passwort an den Proxy zu übergeben, kann dieses frühere Dokument nicht korrigieren.

Wählen Sie den Timer, nachdem Sie den fehlgeschlagenen Vorgang identifiziert haben. Navigation, Netzwerkeinrichtung und Element-Warten haben unterschiedliche Grenzen. Eine wirklich langsame Oberfläche kann ein längeres Selektor-Warten rechtfertigen; eine Fehlerseite bleibt das falsche Dokument.

Halten Sie Browsersitzung und Route beim Vergleichen stabil. Proxy, Selektor und den gesamten Browserzustand in einem Versuch zu ändern, verdeckt, welche Bedingung wichtig war.

Ähnliche Artikel