Here is a script that does the trick. You need Python and a Python package called "mechanize" to run it. Just replace the URL and password below.
#!/usr/bin/env python
import mechanize
import sys
if len(sys.argv) != 5:
print "Usage: ./add_student <first name> <last name> <username> <course>"
sys.exit(0)
BASE_URL = "<Put your Webwork server URL here.>"
WW_PASSWD = "<Put your Webwork server admin password here"
ADD_URL = BASE_URL + "/%s/instructor/add_users/?number_of_students=1"
first_name = sys.argv[1]
last_name = sys.argv[2]
username = sys.argv[3]
course = sys.argv[4].replace(" ", "_")
def authenticate(class_, password):
browser = mechanize.Browser()
browser.open(BASE_URL + "/" + class_)
browser.select_form(nr = 0)
browser["user"] = "admin"
browser["passwd"] = password
browser.submit()
return browser
add_url = BASE_URL + "/%s/instructor/add_users/?number_of_students=1" % course
browser = authenticate(course, WW_PASSWD)
browser.open(add_url)
browser.select_form("new-users-form")
browser["last_name_1"] = last_name
browser["first_name_1"] = first_name
browser["student_id_1"] = username
browser["new_user_id_1"] = username
browser.submit()