#!/usr/local/bin/python

"""
 get wiki pages from a tikiwiki
 Author: Daniela Nicklas
"""
import sys
import httplib
from HTMLParser import HTMLParser
import string
import os

# config variables

wikihost="hostname"
wikipath="/tiki/tiki-print.php?page="
targetdir="pages"
pagelistfile = "pagelist"


# global variables
wikiroot = "" # root for all wiki pages
pagelist = [] # list of all wiki pages

# get pagelist
pl = open(pagelistfile,'r')
pagelist = []
for line in pl:
    pagelist.append(line.strip())
pl.close

print "Dumping Wiki %s to directory %s"%(wikihost,targetdir)

# create directory (if necessary)
if not os.access(targetdir, os.F_OK):
    os.mkdir(targetdir)

# open connection and get the titleindex
httpconnection = httplib.HTTPConnection(wikihost)

# fetch pages
for pagename in pagelist:
    httpconnection.request("GET", wikipath+pagename)
    response = httpconnection.getresponse()
    if response.status != 200:
        print response.status, response.reason
    else:
        # get pages
        print pagename
        pagetext = response.read()
        f = open(targetdir+"/"+pagename+".html", "w")
        f.write(pagetext)
        f.close()
   
# close the connection
httpconnection.close()


