Hi,
The "log in" process involves (as usual for almost all sites) sending the server a username and password etc, and getting back a cookie or cookies, which are then sent with each request. Browsers do this automatically, they don't "know" that there is a login, they just send back whatever cookies they have been given.
If, as Catrope says, you are in js or something, with no control over the HTTP request, you can't do much about that except logging out (you might be able to save and restore the cookies?). But if you are doing the HTTP request, just leave out the cookies, and you will look "logged out" to the server.
For example, code to read the API (or index.php) might look like this: (from Interwicket)
import urllib from StringIO import StringIO from gzip import GzipFile
class MyURLopener(urllib.FancyURLopener): version="Interwicket/1.0"
# [...]
try: uo = MyURLopener() uo.addheader('Cookie', logindata or '') uo.addheader('Accept-Encoding', 'gzip') f = uo.open(url) text = f.read() try: if 'gzip' in f.info()['Content-Encoding']: text = GzipFile(fileobj=StringIO(text)).read() else: pass except KeyError: pass text = unicode(text, 'UTF-8' , errors = 'ignore') except Exception, e: with plock: print "(%s: exception reading API: %s)" % (currentThread().name, repr(e)) text = ''
If you set logindata = None, rather than the login cookies, you'll get the result for a logged out user. (or leave out that line)
Robert