Jetzt lerne ich cURL, ich stehe vor einem Problem, nämlich mich direkt mit Benutzername und Passwort auf einer Seite anzumelden
Antworten
Zu viele Anzeigen?Die Methode, die Sie verwenden müssen, hängt genau davon ab, wie die Benutzername/Passwort-Überprüfung der Webseite implementiert ist, aber das könnte Ihnen helfen:
http://curl.haxx.se/mail/archive-2008-05/0113.html
Ich gehe davon aus, dass du Seiten abrufen möchtest, die hinter einer Login-Seite versteckt sind, und dass diese Seite nicht durch CAPTCHA geschützt ist. Um dies zu tun, musst du
- einen POST-Request mit den Anmeldedaten des Anmeldeformulars an die Submit-URL des Anmeldeformulars senden (siehe HTML-Quelltext)
- Cookies speichern
- diese Cookies bei allen nachfolgenden Anfragen senden (bei Bedarf aktualisieren)
Ich mache das mit wget
. curl
sollte ähnlich sein (siehe die Anleitung).
1, 2:
wget --keep-session-cookies --save-cookies "mycookies" \
--post-data "login=mylogin&password=mypass" submit_URL
3:
wget --load-cookies "mycookies" --keep-session-cookies --save-cookies "mycookies" \
another_URL_behind_login_form
Basierend auf dem, was ich im man curl
sehe, sollten 1–2 etwas wie folgt sein (nicht getestet):
curl -F "login=mylogin;password=mypass" -c "mycookies" submit_URL
und 3:
curl -b "mycookies" -c "mycookies" another_URL
Aber ich habe es nicht mit curl
ausprobiert.