Seite 1 von 1

Python und Cookies

Verfasst: Mittwoch 16. Juli 2014, 19:10
von DKKA
Hallo zusammen,

Ich nütze das Requests Module und möchte gerne ein Cookie auslesen den ich zurück bekomme.
Auf der Dokumentationsseite habe ich folgenden Code gefunden:

Code: Alles auswählen

>>> url = 'http://example.com/some/cookie/setting/url'
>>> r = requests.get(url)

>>> r.cookies['example_cookie_name']
'example_cookie_value'
Leider krieg ich nichts mit "r.cookies" nachdem ich einen Get-Request an eine bestimme Adresse geschickt habe. Heisst das, dass ich mehrere Responses vom Server kriege und ich in diesem Fall nur eine Auslese die aber keine Cookies enthält? Wenn ja, wie kann ich die anderen Responses auslesen?

Ich möchte nur einen Request an eine Seite schicken und dann das Cookie auslesen das ich kriege. Im Netz finde ich zwar Beispiele fürs auslesen von Cookies, aber dort wird nirgends das Request-Module genützt und leider blicke ich nicht ganz durch, welches Module ich am besten nützen sollte...

Vielen Dank für Eure Hilfe.

Re: Python und Cookies

Verfasst: Mittwoch 16. Juli 2014, 19:15
von BlackJack
@DKKA: Wenn der Cookie bei der URL die Du abfragst nicht gesetzt wird, dann kannst Du den da auch nicht auslesen. Irgendwie naheligend, oder? ;-)

Und zu *einer* Anfrage bekommst Du auch nur *eine* Antwort.

Re: Python und Cookies

Verfasst: Mittwoch 16. Juli 2014, 20:12
von DKKA
BlackJack hat geschrieben:@DKKA: Wenn der Cookie bei der URL die Du abfragst nicht gesetzt wird, dann kannst Du den da auch nicht auslesen. Irgendwie naheligend, oder? ;-)

Und zu *einer* Anfrage bekommst Du auch nur *eine* Antwort.
Vielen Dank für Deine Antwort.

Das heisst, wenn ich dann keine Cookie-Zeile im Header der Response sehe, wird das Cookie nicht per Header geschickt sondern per Skriptsprache auf dem Rechner erstellt.?

Re: Python und Cookies

Verfasst: Mittwoch 16. Juli 2014, 20:16
von BlackJack
@DKKA: Zum Beispiel. Oder wenn die Seite auch ohne JavaScript etwas nachlädt, zum Beispiel Bilder oder Frame-Inhalte. Das sollte sich mit entsprechenden Entwicklerwerkzeugen herausfinden lassen. Zum Beispiel mit Firefox und dem Firebug-Plugin. Da kannst Du Dir alle Anfragen und Antworten die zu einer Webseite gehören aufzeichnen und anzeigen lassen.

Re: Python und Cookies

Verfasst: Mittwoch 16. Juli 2014, 20:37
von DKKA
BlackJack hat geschrieben:@DKKA: Zum Beispiel. Oder wenn die Seite auch ohne JavaScript etwas nachlädt, zum Beispiel Bilder oder Frame-Inhalte. Das sollte sich mit entsprechenden Entwicklerwerkzeugen herausfinden lassen. Zum Beispiel mit Firefox und dem Firebug-Plugin. Da kannst Du Dir alle Anfragen und Antworten die zu einer Webseite gehören aufzeichnen und anzeigen lassen.
Hm, ich habe JavaScript ausgeschaltet und finde keine Cookie Information im Header der Response. Trotzdem sehe ich, dass ein Cookie erstellt wurde. Wie ist das möglich?

Re: Python und Cookies

Verfasst: Mittwoch 16. Juli 2014, 20:50
von BlackJack
@DKKA: Gar nicht. :-)

Re: Python und Cookies

Verfasst: Mittwoch 16. Juli 2014, 21:06
von DKKA
BlackJack hat geschrieben:@DKKA: Gar nicht. :-)
Ist das verhext :?

Mit NoScript aktiviert wird bei mir ein Session-Cookie gesetzt, sogar wenn ichs manuell in der about:config deaktiviere => wird das Cookie per Header geschickt.

Dann lese ich den Header wohl nicht vollständig aus....?

Code: Alles auswählen

r = requests.get(url_2, headers=headers)
r.headers
Der Dictionary enthält nämlich nur folgende Schlüssel:

Code: Alles auswählen

'content-encoding'
'transfer-encoding'
'expires'
'vary'
'server'
'connection'
'pragma'
'cache-control'
'date':
'x-powered-by'
'content-type'
Ich sehe nirgends ein Cookie-Field oder sonst was ähnliches.. :(

Re: Python und Cookies

Verfasst: Donnerstag 17. Juli 2014, 22:50
von apollo13
Wenn du das Cookie schon hast braucht der Server es nicht nochmal zu schicken ;) lösch doch mal die Cookies lokal und schau dann den nächsten request an.