Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get cookie from CookieJar by name

I know that I can iterate through the cookies in a cookiejar, and this would allow me to find a cookie with a particular name - but does the CookieJar object itself have any methods I can call to get a certain cookie by name?

It just saves me having to write a helper method that already exists.

like image 699
Matt Avatar asked Nov 17 '11 23:11

Matt


1 Answers

Yes, the __iter__ method will go through each cookie in CookieJar.

for cookie in cj:    print cookie.name, cookie.value, cookie.domain #etc etc 

A cookie is not just a name and value pair. In its long list (17) of properties, there is domain and path. A domain value of .ibm.com would be applicable to the website mail.ibm.com for example. A domain value of ibm.com and path value of /abc would not apply to the web page ibm.com/index.htm. So by supplying the name alone is insufficient to find the value of an applicable cookie in CookieJar.

Though the __iter__ method will return a list of cookie objects easily, example list(cj), the internal structure of CookieJar is not a simple list. Internals about the CookieJar class is here.

like image 99
Old Geezer Avatar answered Sep 21 '22 01:09

Old Geezer