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)
