Mehrere Benutzeranmeldeinformationen in wget

Mehrere Benutzeranmeldeinformationen in wget

Ist es mithilfe wgetvon möglich, mehr als ein Benutzer-/Passwortpaar anzugeben, wenn eine Website gespiegelt wird, die mehrere passwortgeschützte Bereiche mit unterschiedlichen Anmeldeinformationen hat?

Ich möchte eine komplette Website spiegeln, die mehrere geschützte Bereiche hat. Als vereinfachtes Beispiel betrachten wir die folgende Struktur:

example.com/protected_area_1/ (user=alice, password=cat)
example.com/protected_area_2/ (user=bob, password=dog)

Jetzt wget --mirror example.comkönnen Sie bei der Verwendung zusätzlich die Parameter --userund angeben --password, aber durch die Angabe von nur einem Benutzer/Passwort-Paar konnte einer der beiden geschützten Bereiche aufgrund von nicht heruntergeladen werden 401 Authorization Required.

Gibt es eine Möglichkeit, so etwas zu tun wget --user=alice --password=cat --user=bob --password=dog (...)? In natürlicher Sprache:Wenn Sie auf einen passwortgeschützten Bereich stoßen, versuchen Sie, Zugriff zu erhalten, indem Sie nacheinander alle angegebenen Anmeldeinformationen ausprobieren.

Antwort1

Wenn dies geschehen muss mit wget:

  1. Wenn die Anzahl an Benutzernamen-/Passwortkombinationen gering ist und der Download nicht zu groß ist, können Sie den gesamten Baum mit jeder Kombination wiederholt ausführen (mit --userund --password) und die Ergebnisse kombinieren.

  2. Wenn die verschiedenen Benutzer-/Passwortkombinationen von Domänen abhängen, können Sie wgetdie Optionen von --ask-passwordund ausprobieren expectund die richtige zum richtigen Zeitpunkt angeben.

Für komplexere Downloadsituationen habe ich immer ein spezielles, auf Selenium basierendes Programm verwendet, das mit der aktuellen Praxis des Ladens von Teilen der Seiten mit JavaScript sowie mit anderen Anmeldeschemata als der grundlegenden Authentifizierung, die wget verarbeiten kann, korrekt umgeht.

verwandte Informationen