def extractInfo(classInfo,year,semester): classInfo = classInfo.split('.0 ')[1] className = classInfo.split('\\n')[0] if str(className).startswith('Credit'): className = str(className).split('Credit ')[1] classInfo = classInfo.split('\\n')[-1] classLocation = classInfo.split(' -')[0] if ' -' in str(classInfo): classInfo = classInfo.split(' -')[1] elif 'M-' in str(classInfo): classInfo = 'M-' + str(classInfo.split('M-')[1]) classTimes = classInfo print classTimes if '- ' in classTimes: classTime = classTimes.split('- ')[1:] ''' for character in str(classTime): print character, character.encode('hex') ''' print classTime if '-' in str(classTime): classTime = str(classTime).split('-') print classTime classDays = classInfo.split(' ')[0] #classTime = str(classTimes.split(':')[0])+':'+str(classTimes.split(':')[1])+':'+str(classTimes.split(':')[2]) #print "Class " + str(className) + " meets in " + str(classLocation) + " on the days " + str(classDays) + ' from ' + str(classTime) classStartHour,classStartMinute,classEndHour,classEndMinute = extractDaysTimes.extractStartStopTimes(classTime) daysWithClass = extractDaysTimes.extractDaysOfWeek(classDays) firstMonth,firstDay,lastMonth,lastDay = getDates.findBeginEnd(semester,year) #Send this info to getDates to find when this specific semester starts and ends
import extractDaysTimes import makeCalendar import getDates from BeautifulSoup import BeautifulSoup # We plan to make iCal files Google Calendar can understand classList = BeautifulSoup( open("Class Schedule.html") ) # Open your download of the printer friendly version of your WebStac class schedule page semester = classList.find(selected="selected") # Figure out what semester this schedule is for fallSpring = semester.contents[0][0:2] # Semester name is in the first two char FL or SP classYear = int(semester.contents[0][2:6]) # Year name is the 3rd -> 7th chars (ie 2014) firstMonth, firstDay, lastMonth, lastDay = getDates.findBeginEnd( fallSpring, classYear ) # Send this info to getDates to find when this specific semester starts and ends enrolledClasses = [] classesTable = classList.find( id="tabSched" ) # Parse through the HTML table and put information for each class into a list of lists rows = classesTable.findAll("tr") for tr in rows: cols = tr.findAll("td") classInfo = [] # Temporary list of info for each class for td in cols: for item in td: classInfo.append(item.string) if classInfo[0] == "Enrolled": # We only want to add classes we are enrolled in
import getDates from BeautifulSoup import BeautifulSoup #We plan to make iCal files Google Calendar can understand classList = BeautifulSoup( open('Class Schedule.html') ) #Open your download of the printer friendly version of your WebStac class schedule page semester = classList.find( selected="selected") #Figure out what semester this schedule is for fallSpring = semester.contents[0][ 0:2] #Semester name is in the first two char FL or SP classYear = int( semester.contents[0][2:6]) #Year name is the 3rd -> 7th chars (ie 2014) firstMonth, firstDay, lastMonth, lastDay = getDates.findBeginEnd( fallSpring, classYear ) #Send this info to getDates to find when this specific semester starts and ends enrolledClasses = [] classesTable = classList.find( id='tabSched' ) #Parse through the HTML table and put information for each class into a list of lists rows = classesTable.findAll('tr') for tr in rows: cols = tr.findAll('td') classInfo = [] #Temporary list of info for each class for td in cols: for item in td: classInfo.append(item.string) if classInfo[