Seite 1 von 1

Kein Formular vorhanden, trotzdem Daten übertragen

Verfasst: Sonntag 1. Februar 2009, 22:52
von vogti
Hallo,
es geht um die zitierte URL. Wird sie geöffnet, so wird nach Username und Passwort gefragt. Aber wie kann ich diese Daten übertragen? Ich kann ja nach keinem Formular suchen und das mit mechanize ausfüllen z.b. . Wie verfährt man also?
Wär cool, wenn mir jemand helfen könnte!


lg,
vogti

Verfasst: Sonntag 1. Februar 2009, 23:06
von Birne94
http://www.gidf.de/http-basic%20autentifizierung
schau mal da...
hab jetzt kb speziell danach zu suchen ;-)

Die Daten musst du dann per PHP auswerten...

Verfasst: Montag 2. Februar 2009, 02:16
von Leonidas
Birne94 hat geschrieben:http://www.gidf.de/http-basic%20autentifizierung
schau mal da...
hab jetzt kb speziell danach zu suchen ;-)
Da finde ich schon den Link besser, vor allem ohne Tippfehler.
Birne94 hat geschrieben:Die Daten musst du dann per PHP auswerten...
Wieso das? Also ich sehe mit SAX, Minidom, ElementTree, lxml, 4Suite und Amara mehr als genug XML-Libraries. Bis auf die ersten beiden sind die anderen recht brauchbar.

Verfasst: Montag 2. Februar 2009, 14:20
von vogti
Ah, ok. So weis ich wenigstens schonmal, wonach man suchen muss.

Ich habe es jetzt mit dem Beispiel ausm Python-Tutorial probiert, komme jedoch zu keinem brauchbaren Ergebnis:

Code: Alles auswählen

#!/usr/bin/python -u
import urllib2
# Create an OpenerDirector with support for Basic HTTP Authentication...
auth_handler = urllib2.HTTPBasicAuthHandler()
auth_handler.add_password(realm='PDQ Application',
                          uri='http://twitter.com/statuses/friends_timeline.xml',
                          user='username',
                          passwd='password')
opener = urllib2.build_opener(auth_handler)
# ...and install it globally so it can be used with urlopen.
urllib2.install_opener(opener)
handle = urllib2.urlopen('http://twitter.com/statuses/friends_timeline.xml')
thepage = handle.read()
Als Fehler wird mir trotzdem 401 angegeben.
Was genau hat dieses "realm" Attribut zu sagen? Habe das auch in anderen Script-beispielen gesehen, konnte jedoch nichts damit anfangen.

Verfasst: Montag 2. Februar 2009, 14:33
von DasIch
Wieso erfindest du das Rad neu? python-twitter existiert.

Verfasst: Montag 2. Februar 2009, 14:40
von vogti
DasIch hat geschrieben:Wieso erfindest du das Rad neu? python-twitter existiert.
Jo, weis ich. Darf ich jedoch nicht benutzen. Alles was ich programmiere, soll ich selbst gemacht haben. Ich komme nur mit der verdammten Verbindung nicht zu recht, da es absolutes Neuland für mich ist.

Verfasst: Montag 2. Februar 2009, 14:56
von DasIch
Dann solltest du zumindest die Dokumentation zur Twitter API lesen, dann wüsstest du auch wofür die 401 steht.

Verfasst: Montag 2. Februar 2009, 15:29
von vogti
Ok, so weit geht mein Wissen dann doch, dass ich weis was 401 bei einem HTTP request bedeutet. Das hat aber nichts mit meiner Frage zu tun :)

Was ist an dem oben angegebenen Code-Schnipsel falsch? Warum authorisiert mich der Server nicht? Was hat das Attribut Realm zu bedeuten? Müssen die Attribute für User/Password vielleicht anders heißen - wo kriege ich heraus wie?

Verfasst: Montag 2. Februar 2009, 17:07
von DasIch
Du darfst python-twitter nicht verwenden aber irgendwie werden die dass ja geschafft haben und wie dürfte dort im Code zu sehen sein ;)