def read_and_stock_dict_course_items_from_webroot_source(self, course_items_source_htmlwebroot_filename=None):
   '''
   1st read option: Course items are withdrawn from HTML Webroot file source
   '''
   course_items_source_htmlwebroot_filename = self.return_course_items_source_htmlwebroot_filename_or_default_or_raise(course_items_source_htmlwebroot_filename)
   text = open(course_items_source_htmlwebroot_filename).read()
   re_find_obj = self.re_compiled_text_to_find.finditer(text)
   for each_re_found in re_find_obj:
     course_id    = each_re_found.group(1)
     course_n_seq = each_re_found.group(2)
     try:
       # this below should not raise ValueError, if it does, continue without adding it to dict
       int(course_n_seq)
     except ValueError:
       continue
     if self.unique_course_id_dict.has_key(course_id):
       continue
     try:
       coursera_item_obj = CourseraCourse.objects.get(cid=course_id) #(course_id, course_n_seq)
     except CourseraCourse.DoesNotExist:
       coursera_item_obj = CourseraCourse()
       coursera_item_obj.cid = course_id
       coursera_item_obj.n_seq = course_n_seq
       coursera_item_obj.save()
     self.unique_course_id_dict[course_id] = coursera_item_obj
Exemplo n.º 2
0
 def get_course_or_create_it_or_None(self, cid, n_seq):
     if n_seq == 0:
         return None
     try:
         ccourse = CourseraCourse.objects.get(cid=cid)
     except CourseraCourse.DoesNotExist:
         ccourse = CourseraCourse()
         ccourse.cid = cid
         ccourse.n_seq = n_seq
         ccourse.save()
         return ccourse
     if ccourse.n_seq == -1:
         ccourse.n_seq = n_seq
     if ccourse.n_seq != n_seq:
         return None
     return ccourse
 def save_courses_subset_to_db(self):
   for i, course_subset in enumerate(self.courses_subset):
     #if course_subset.university == None:
       #continue
     try:
       print str(i+1).zfill(3), 'Saving to db', course_subset
     except UnicodeEncodeError:
       print str(i+1).zfill(3), 'Saving to db'
     course = CourseraCourse()
     course.cid = course_subset.cid
     course.n_seq = course_subset.get_n_seq()
     course.title = course_subset.title
     if course_subset.start_date != None:
       course.start_date = course_subset.start_date
     if course_subset.duration_in_weeks != None:
       course.duration_in_weeks = course_subset.duration_in_weeks
     #course.save()
     if course_subset.university != None:
       university_name = course_subset.university
       try:
         institution = Institution.objects.get(name=university_name)
       except Institution.DoesNotExist:
         institution = Institution()
         institution.name = university_name
         #institution.courseracourse_id = course.cid
         institution.save()
         print 'institution id', institution.id
         #CourseraCourse.objects.create(name=university_name)
       except AttributeError, e:
         print 'university_name', university_name
         print e
         #sys.exit(0)
         pass
       #course.in
       #course.institutions.add(institution.id)
     course.save()