How do I read back all of the cookies in Python without knowing their names?
20
votes
When you say "read them back", do you mean a) read them from an HTTP response, or b) read them out of the CookieJar? Or is there a (c) interpretation?
- Jarret Hardie
There is a (c) as well :) c_1) Someone might ask about the cookies of HIS python session... E.g. if the python script is a .cgi ( for that see e.g. os.environ['HTTP_COOKIE'] answer by Matt Lacey, depending on the web server used to serve the cgi) c_2) Same question if its a notebook running in jupyter (web server is tornado)
- ntg
4 Answers
24
votes
Not sure if this is what you are looking for, but here is a simple example where you put cookies in a cookiejar and read them back:
from urllib2 import Request, build_opener, HTTPCookieProcessor, HTTPHandler
import cookielib
#Create a CookieJar object to hold the cookies
cj = cookielib.CookieJar()
#Create an opener to open pages using the http protocol and to process cookies.
opener = build_opener(HTTPCookieProcessor(cj), HTTPHandler())
#create a request object to be used to get the page.
req = Request("http://www.about.com")
f = opener.open(req)
#see the first few lines of the page
html = f.read()
print html[:50]
#Check out the cookies
print "the cookies are: "
for cookie in cj:
print cookie
5
votes
5
votes