HTTP-Request

Sockets, TCP/IP, (XML-)RPC und ähnliche Themen gehören in dieses Forum
Antworten
huffman
User
Beiträge: 6
Registriert: Montag 10. Mai 2010, 15:01

Hallo Liebes Python Forum,

ich möchte einen Request auf eine Datei machen um auf die zugreifen zu können. Die Datei ist mit einem Login geschützt das so aussieht:

<form name="login" method="post">
<input type="text" name="username">
<input type="password" name="password">
<input type="submit" name="absenden">
</form>

Nur weiß ich nicht wie ich zu dieser Datei komme, sprich mich da einlogge, habt ihr eine Idee?

Liebe Grüße, Huffi!
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Wurde schon 1000x beantwortet... ;-)

Stichworte: urllib, urllib2, mechanize....
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
sma
User
Beiträge: 3018
Registriert: Montag 19. November 2007, 19:57
Wohnort: Kiel

Mache einen POST-Request auf die URL aus dem FORM (also login, wobei du natürlich die absolute URL brauchst), werte dann die Antwort aus. Wahrscheinlich übergibt der Server zusammen mit der Response ein Cookie, welches du ab dann bei jedem weiteren Request mitschicken musst. Das tust du dann mit dem GET-Request auf die dich interessierende URL (die du als eine Datei bezeichnest hast). Möglicherweise musst du noch User-Agent und andere HTTP-Header "fälschen", um dem Server einen Browser vorzugaukeln, falls der Betreiber es untersagt hat und eigentlich nicht will, dass man da per Programm zugreift. Falls es kein Cookie ist, sondern per URL-Rewriting eine Session-ID transportiert wird, musst du dies eben berücksichtigen. Genauer lässt sich das nicht beantworten, es kommt auf den Einzelfall an.

Stefan
Antworten