Ejemplo n.º 1
0
def run(options):
    """ executes the purpose of this program having options into account """
    courseid = str(options.courseid)
    themeid = str(options.themeid)
    exercises = []
    for path in options.files:
        if not path.endswith(".html"):
            print "WARNING: unsuported format %s (ignored)"%path
            continue
        if not os.path.isfile(path):
            print "WARNING: file not found %s (ignored)"%path
            continue
        with open(path) as f:
            soup = BeautifulSoup(f.read())
            title = unicode(soup.title.text).strip().encode("utf-8")
            description = "\n".join(str(c).strip() for c in soup.body.div.contents if not c == None
                                    and len(str(c).strip())> 0
                                    and not c.name == "h1")
        exercise = MoodleExercise(title, description)
        if options.duedate:
            exercise.set_allowsubmissionsfromdate(options.fromdate)
            exercise.set_duedate(options.duedate)
        exercises.append(exercise)
    if len(exercises)>0:
        moodle = MoodleScrapper()
        moodle.submit_exercises_on_theme(courseid, themeid, exercises)
        moodle.disconnect()
Ejemplo n.º 2
0
form = tema.find("form", attrs={"id":formid})
select = form.find("select", attrs={"name":"jump"})
for option in select.find_all("option"):
    if option.text.strip() == "Tasca":
        value = option["value"]
        break
else:
    print "No s'ha trobat l'opció pel formulari de creació de tasca"
    moodle.disconnect()
    sys.exit()

moodle.submit_form({"jump":[value]})
moodle.br.select_form(nr=0)
exercici = MoodleExercise("Exercici de prova avui", "Descripció de <b>prova</b>")
exercici.set_allowsubmissionsfromdate("20/9/2016 14:55")
exercici.set_duedate("21/10/2017 15:50")
exercici.set_cutoffdate("19/11/2017 13:45")
exercici.add_file("try.py")
moodle.submit_exercise(exercici)




# Desconnexió
moodle.disconnect()
print "URL    : ", moodle.response.geturl()
# print "Body: ", response.read()
#print "headers: ", moodle.response.info()


Ejemplo n.º 3
0
#! /src/bin/env python
# encoding: utf-8

# Test MoodleExercise class
from exercise import MoodleExercise

exercise = MoodleExercise("un", "dos")
exercise.set_allowsubmissionsfromdate("20/10/2016 14:55")
exercise.set_duedate("21/11/2017 15:50")
exercise.set_cutoffdate("19/9/2017 13:45")
print exercise.data