Raf, alles was ich sagen kann ist, Egads! Die Dokumentation ist sicherlich nicht klar! Ich benutze Python seit Jahren und diese einfache Stack-Overflow-Frage, von der ich dachte, dass ich sie schnell lesen würde, bevor ich mit der Arbeit an diesem Tag angefangen habe, brauchte mehr als zwanzig Minuten, um zu antworten. :-)
Erstens: Es stellt sich heraus, dass die "Cookie" -Bibliothek und die "cookielib" -Bibliothek völlig voneinander getrennt sind und nichts miteinander zu tun haben. Dies ist in der Dokumentation angegeben, Sie müssen jedoch auf jeder Dokumentationsseite zum Abschnitt "Siehe auch" scrollen, um dies herauszufinden. Es wäre hilfreich, wenn dies stattdessen oben auf jeder Seite wäre.
Also, wenn Sie ein Objekt aus der "Cookie" Bibliothek in "cookielib" übergeben, verwirren Sie die "cookielib" Interna, weil es Cookies in Wörterbüchern speichert und ein "Cookie" Cookie aussieht - raten Sie mal! - ein Wörterbuch, also "cookielib" verwechselt es für eine seiner eigenen internen Datenstrukturen und speichert andere Cookies darin. Der Fehler, den ich als Ergebnis erhalten, ist:
<type 'exceptions.AttributeError'>: 'str' object has no attribute 'discard'
args = ("'str' object has no attribute 'discard'",)
message = "'str' object has no attribute 'discard'"
Eigentlich ist das der Fehler ich nach kleben ein paar Attribute auf dem Cookie.Cookie Objekt zu erhalten, die dort nicht gehören, sondern dass ich hinzugefügt, bevor ich erkannte, dass ich in der hoffnungslosen Aufgabe beschäftigt war zu versuchen, einen Cookie.Cookie wie ein cookielib.Cookie zu verhalten. :-) Die früheren Fehler waren alle attribut fehlende Fehler wie:
<class 'Cookie.CookieError'>: Invalid Attribute name
args = ('Invalid Attribute name',)
message = 'Invalid Attribute name'
(Und ich mischt die Fehler hier, falls einige schlechte Zukunft Seele die Cookie-Klassen und macht die Google-Suchanfragen gerade dabei habe ich, Keiner von denen ergab keine Ergebnisse für die Fehler, die ich bekam!)
Also bevor wir weiter gehen, muss ich wissen: Sie versuchen, wie ein Web Server zu handeln, liefern Cookies an Kunden und versuchen zu bekommen Sie sind wieder intakt, wenn der Client die nächste Anfrage sendet. In diesem Fall sollte ich Ihnen zeigen, wie das Modul "Cookie" funktioniert. Oder schreibst du einen Web-Client, zum Testen oder zum Spaß, der mit den Cookies, die er mit einer Web-Anfrage an eine Webseite sendet, nicht klar kommt, in welchem Fall wir über "cookielib" sprechen sollten?
Warum gibt es kein "()" nach "FileCookieJar"? –
hi ich reparierte das und es funktioniert immer noch nicht? .. –