3 import cookielib, sys, os, urllib2
6 def __init__(self, argv):
9 if len(self.argv) == 12:
10 self.cookies = self.argv[11]
11 def get_full_url(self):
12 #TODO: this is a hack, fix in uzbl.c!
13 u = self.get_host()+self.argv[10]
14 if self.argv[6].startswith('https'):
22 return self.get_full_url().split(':')[0]
23 def is_unverifiable(self):
25 def get_origin_req_host(self):
27 def has_header(self, header):
28 if header == 'Cookie':
29 return self.cookies!=None
30 def get_header(self, header_name, default=None):
31 if header_name == 'Cookie' and self.cookies:
35 def header_items(self):
37 return [('Cookie',self.cookies)]
40 def add_unredirected_header(self, key, header):
45 def __init__(self, argv):
47 def getallmatchingheaders(self, header):
48 if header == 'Set-Cookie' and len(self.argv) == 12:
49 return ['Set-Cookie: '+self.argv[11]]
52 def getheaders(self, header):
53 if header == 'Set-Cookie' and len(self.argv) == 12:
54 return [self.argv[11]]
58 def __init__(self, argv):
61 return FakeHeaders(self.argv)
63 if __name__ == '__main__':
64 if 'XDG_DATA_HOME' in os.environ.keys() and os.environ['XDG_DATA_HOME']:
65 jar = cookielib.MozillaCookieJar(
66 os.path.join(os.environ['XDG_DATA_HOME'],'uzbl/cookies.txt'))
68 jar = cookielib.MozillaCookieJar(
69 os.path.join(os.environ['HOME'],'.local/share/uzbl/cookies.txt'))
75 req = FakeRequest(sys.argv)
80 jar.add_cookie_header(req)
84 res = FakeResponse(sys.argv)
85 jar.extract_cookies(res,req)
86 jar.save(ignore_discard=True) # save session cookies too
87 #jar.save() # save everything but session cookies