Holen Sie sich den cookie von CookieJar mit Namen
Weiß ich, dass ich Durchlaufen Sie die cookies in einem cookiejar, und dies würde es erlauben, mich zu finden, um ein cookie mit einem bestimmten Namen - aber funktioniert das CookieJar Objekt selbst irgendwelche Methoden, die ich nennen kann, um eine bestimmte cookie-Namen?
Es nur speichert mir hat das schreiben eine helper-Methode, die bereits vorhanden ist.
InformationsquelleAutor der Frage Matt | 2011-11-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, die
__iter__
- Methode wird Durchlaufen, jedes cookie inCookieJar
.Einem cookie ist nicht nur ein name-Wert-paar. In seine lange Liste (17) von Eigenschaften, es ist
domain
undpath
. Eine domain Wert.ibm.com
wäre für die websitemail.ibm.com
zum Beispiel. Eine domain Wertibm.com
- und Pfad-Wert von/abc
würde nicht auf die web-Seiteibm.com/index.htm
. So, indem der name allein ist nicht ausreichend, um den Wert einer gültigen cookie inCookieJar
.Obwohl die
__iter__
Methode gibt eine Liste voncookie
Objekte leicht Beispiellist(cj)
die innere Struktur derCookieJar
ist nicht nur eine einfache Liste. Interna über dieCookieJar
Klasse ist hier.InformationsquelleAutor der Antwort Old Geezer
Können Sie auch dict_from_cookiejardas gibt einen Schlüssel/Wert-Wörterbuch aus einem CookieJar. So etwas wie:
und dann Zugriff auf Ihre cookie-Wert von Schlüssel.
InformationsquelleAutor der Antwort coda
Ist es undokumentierte Interna, aber Sie können den Zugriff auf cookies direkt so:
cookiejar._cookies[domain][path][name]
InformationsquelleAutor der Antwort David K. Hess
cookielib.CookieJar?
können Sie konvertieren jar zu einer Liste und zu verarbeiten, dass z.B.
{i.name: i for i in list(j)}
und btw, j._cookies ist eigentlich ein dict - -dict-bereits, wenn auch nicht völlig trivial indiziert.
cookie jar-Datei?
Ich dachte, das waren nur-text-Dateien...
InformationsquelleAutor der Antwort Dima Tisnek