ANN: ClientCookie 0.4.3a released

John J. Lee jjl@pobox.com
13 Aug 2003 01:12:57 +0100


http://wwwsearch.sourceforge.net/ClientCookie/

A new development release.

This is an alpha release: interfaces may change (probably not much,
though).  0.4.3a is probably less broken than 0.3.5b.  0.3.x is no
longer being maintained.  0.4.x includes interface changes, but it
isn't hard to switch -- see:

http://wwwsearch.sourceforge.net/ClientCookie/porting.txt

Changes since 0.3.2a:

 * Changed license to BSD, so I can use a Python Cookbook recipe.
   The only difference is the addition of a non-endorsement clause.
 * Much of AbstractHTTPHandler has been rewritten in terms of
   processors (a bit like handlers).  I've submitted this as a patch
   to SF, and am crossing my fingers that it'll get accepted roughly
   as-is.  If it doesn't, there will likely be more interface changes
   here.
 * Renamed Cookies class to CookieJar (and analogously for
   MozillaCookies and MSIECookies).  This was inevitable given the
   existence of the Cookie class -- too confusing otherwise.
 * Response objects are no longer seekable by default.  Pass
   SeekableProcessor to build_opener if you want that.
 * Drastically reduced the requirements on response objects.
 * Applied some bugfixes for AbstractHTTPHandler from Python CVS.
   This fixes proxy support.
 * Assorted other bug fixes.
 * HTTPRefreshProcessor now has some constructor arguments to
   allow non-zero time Refreshes, and to control whether or not
   the requested pause is actually honoured, or just skipped.
 * Added support for automatically adding Referer HTTP header (only
   for simple chains of requests).
 * Added some minor new debugging support.


Requires Python >= 1.5.2.

ClientCookie is a Python module for handling HTTP cookies on the client
client side, useful for accessing web sites that require cookies to be
set and then returned later.  It also provides some other (optional)
useful stuff: HTTP-EQUIV and Refresh handling, automatic adding of the
Referer [sic] header and lazily-seek()able responses.  These extras are
implemented using an extension that makes it easier to add new
functionality to urllib2.  It has developed from a port of Gisle Aas'
Perl module HTTP::Cookies, from the libwww-perl library.

Simple usage:

 import ClientCookie
 response = ClientCookie.urlopen("http://foo.bar.com/")

This function behaves identically to urllib2.urlopen, except that it deals
with cookies automatically.  That's probably all you need to know.


John