CaseWiki talk:Projects/Building codes

I got started on this project with a Python script using CaseClasses. It goes a little something like this:

 
import Case
from getpass import getpass
 
username = 'bmb12'
password = getpass()
 
cas = Case.CAS()
browser = cas.login(username, password)
browser.set_handle_robots(False)
browser.open("http://wiki.case.edu")
browser.follow_link(text_regex='Log In')
 
for code, name in Case.Codes.buildings.iteritems():
    url = "http://wiki.case.edu/%s" % name.replace(' ', '_')
    try:
        browser.open(url)
    except:
        print "Didn't find %r." % name
    else:
        browser.follow_link(text='Edit this page')
        browser.select_form(name='editform')
        source = browser['wpTextbox1']
        if 'code:=' not in source:
            insert_at = source.find('{{Building')
            if insert_at >= 0:
                browser['wpTextbox1'] = source[:insert_at]
                browser['wpTextbox1'] += "The building code for %s is [[building code:=%s]].\r\n" % (name, code)
                browser['wpTextbox1'] += source[insert_at:]
            else:
                browser['wpTextbox1'] += "The building code for %s is [[building code:=%s]].\r\n" % (name, code)
            browser.submit()
            print "Added building code for %r." % name

--Brian.Beck 02:38, October 21, 2006 (EDT)

This page has been accessed 429 times.
This page was last modified 01:38, October 21, 2006 by Brian Beck.
About | Disclaimers