Download the source here.

#!/usr/bin/python
 
# Import modulesimport random
import cgi, string, sys
import string
from random import choice, randint, shuffle
 
# Required header that tells the browser how to render the HTML.
print "Content-Type: text/html\n\n"
 
# Define function to generate HTML form.
 
def ranNames():
    alphabet = string.letters
    words = {}
    while len(words) < 1:
        words["".join(choice(alphabet) for i in range(randint(3,8)))] = None
    words = words.keys()
    shuffle(words)
    return words[0]
 
def ranFdns():
    alphabet = string.letters
    words = {}
    while len(words) < 1:
        words["".join(choice(alphabet) for i in range(randint(3,8)))] = None
    words = words.keys()
    shuffle(words)
    return words[0]
 
def emailAdd():
    #domCount = random.randint(0, 247)
    domCount = random.randint(0, 5)
    names = ranNames()
    fdns = ranFdns()
    domEnd = domains[domCount]
    return "<a href='mailto:" + names + "@" + fdns + "." + domEnd + "'>email</a> " + names + "@" + fdns + "." + domEnd + "<br />"
 
def words():
    count = random.randint(0, 132)
    return wordDic[count]
 
domains = ['com', 'net', 'org', 'edu', 'gov', 'mil']
 
wordDic = ['sopiting', 'tonguebird', 'noncomplicity', 'subformative',
'Bardstown', 'winnonish', 'functionals', 'stouter', 'Parlin',
'trigrammic', 'Argynnis', 'unparted', 'uniparental', 'slim-leaved',
'prophetesses', 'nonsensicality', 'Ewan', 'paas', 'nasologist', 'Lman',
'pitless', 'anorgana', 'pyoperitoneum', 'silkwood', 'multiflorous',
'copulate', 'thermobarograph', 'Desmona', 'loose-barbed', 'empoisonment',
'nonneutrality', 'athenaeums', 'self-anatomy', 'biologize', 'atypy',
'unforgettingly', 'AGE', 'interstadial', 'botchily', 'swiple', 'downmost',
'palaverist', 'Hola', 'alkaloids', 'UIT', 'incisures', 'paled',
'Xanthophyceae', 'cacotheline', 'monrolite', 'r.p.s.', 'unpursuant',
'adatom', 'Kasyapa', 'nonschismatical', 'Frick', 'stagnantness',
'fireworms', 'striate', 'nautiloid', 'decentration', 'cassoon', 'arabic',
'wannigan', 'sonars', 'encephalalgia', 'pathan', 'noncommunal', 'hield',
'Yancy', 'preduplicate', 'snubbed', 'analgen', 'Edwardsianism',
'criminousness', 'cavetto', 'ecdysone', 'dulcose', 'cephalically',
'frozenness', 'teslas', 'Chorley', 'syllabised', 'straw', 'nardus',
'Vouvray', 'tree-dotted', 'capsuligerous', 'cecidologist', 'goupin',
'Catheryn', 'multiplated', 'BEd', 'unpenuriousness', 'Neo-pythagoreanism',
'Barcellona', 'copulate', 'retint', 'plass', 'limiting', 'Buyers',
'Genetta', 'Martville', 'Hindman', 'serialisation', 'synedrion',
'lenticel', 'Arabia', 'grammatology', 'gunplay', 'pyrophosphatic',
'Gleich', 'cantara', 'devaluating', 'factitive', 'unlaureled', 'haling',
'insemination', 'demonetized', 'palaverist', 'depertible', 'build-up',
'retzian', 'crazy-looking', 'straitlacedly', 'abstinent', 'short-hair',
'aneurysm', 'strait-lacer', 'lygaeid', 'procanal', 'blue-yellow-blind',
'astrose']
 
ranCount = random.randint(1, 5)
 
def genPage():
    startCount = 0
    startWord = 0
    startWord1 = 0
    ranCount = random.randint(1, 5)
    wordCount = random.randint(1, 5)
    wordCount1 = random.randint(1, 5)
    print "<HTML>\n"
    print "<HEAD>\n"
    print "\t<TITLE>Info Form</TITLE>\n"
    print "</HEAD>\n"
    print "<BODY BGCOLOR = white>\n"
    print "<a href='<a href="http://localhost/cgi-bin/borkSpammers.py%27" target="_blank">http://localhost/cgi-bin/borkSpammers.py'</a>>"
    while  startWord < wordCount:
        print words()
        startWord = startWord + 1
    print "</a><br />"
    while startCount < ranCount:
        print emailAdd()
        startCount = startCount + 1
    print "<a href='<a href="http://localhost/cgi-bin/borkSpammers.py%27" target="_blank">http://localhost/cgi-bin/borkSpammers.py'</a>>"
    while  startWord1 < wordCount1:
        print words()
        startWord1 = startWord1 + 1
    print "</a><br />"
    print "</BODY>\n"
    print "</HTML>\n"
 
genPage()