phpbar.de logo

Mailinglisten-Archive

[php] HTTP-Request mit Login bzw. Session-Cookies

[php] HTTP-Request mit Login bzw. Session-Cookies

Yannik Hampe yannik at cipher-code.de
Die Nov 7 16:03:08 CET 2006



Benni Graf wrote:
> Hi!
Halo Benni,
> 
> Ich möchte mir eine art Robot basteln, der beim Abruf einer Webseite 
> Daten aus dem geschützten Bereich einer anderen Seite holt. Bei diesem 
> geschützten Bereich authentifiziert man sich über ein Login-Formular, 
> wodurch man dann ein Session-Cookie zugeschickt bekommt. Dieses 
> braucht man dann, um die Seite mit den Daten abzurufen.
> 
> Und ebendieses Verhalten will ich jetzt in PHP nachahmen.
> 
> Ich habe für Perl die Klasse WWW::Mechanize [1] gefunden, die recht 
> genau diese Aufgabe erledigen kann, aber leider kenne ich mich in Perl 
> nicht wirklich aus (ich habs nichtmal geschafft, das ding zu 
> installieren ;-) ) und hoffe jetzt, dass ihr mir ne ähnliche 
> PHP-Klasse empfehlen könnt. Gibts sowas? Ist sowas überhaupt möglich 
> oder muss ich doch was aus Perl zusammenbasteln?
> 
> Viele Grüße und schonmal besten Dank,
> 
> Benni.
> 
> P.S.: Ich will damit eine Maske erstellen, um die Daten, um die es 
> geht, besser formatieren zu können. Der Nutzer gibt die Zugangsdaten, 
> mit dem er/sie sich bei der Seite anmeldet, selbst an. Die Sache mit 
> dem Datenschutz von wegen unverschlüsselt übertragenen Passwörtern 
> etc. will ich jetzt erstmal nicht diskutieren, die Daten sind auch 
> eigentlich nicht wirklich sensibel...
> 
> 
> [1] http://search.cpan.org/dist/WWW-Mechanize/
> 
Ich kann dir keinen fertigen Code liefern, aber eine Idee, wie du es
selber machen könntest:

Du kannst dir mit socket_create() eine Verbindung zum Server aufbauen
und dann mit dem Server direkt http sprechen.
Hier:
http://de.php.net/sockets
steht bei den user-comments ganz oben schon eine einfache Klasse, die
http-requests machen kann...
Dabei bekommst du dann die Cookiedaten mit. Und sobald du die hast,
kannst du mit dem Laden auch schon aufhören.
Weil du so früh mit dem Laden aufhören kannst (schon sobald du die
Header hast),  dürfte das die schnellste Lösung sein.

Yannik

php::bar PHP Wiki   -   Listenarchive