def get(self): code = int(self.request.get('code', '0')) q = Department.gql('WHERE dptCode >= :1 ORDER BY dptCode', code) dpts = q.fetch(limit=2) nowDpt = dpts[0] soup = BeautifulSoup( urllib2.urlopen( nowDpt.dptLink ) ) list = soup.table.findAll('a') for one in list: text = one.text; name = re.split('[0-9]', text)[0] code = text[ len(name):].split(' ')[0].split('(')[0] # Dealing w/ the special cases doc = Doctor.all().filter('docCode =', code).get() if not doc and len(code) != 0: doc = Doctor() doc.docName = name doc.docCode = code doc.put() if( len(dpts) > 1): nextDpt = dpts[1] nextUrl = '/parse/doctor?code=%d' % nextDpt.dptCode nextName = nextDpt.dptName else: nextUrl = '/' nextName = 'END OF PARSING' context = { 'type' : 'Doctor', 'nextUrl' : nextUrl, 'nextName': nextName, } path = os.path.join( os.path.dirname('__file__'), 'templates', 'parser.html') self.response.out.write( template.render( path, context) )
def doctor_save(self, doctor_msg): doctor = Doctor(email=doctor_msg.email) doctor.from_message(doctor_msg) doctor.user = users.User(doctor_msg.email) doctor.put() doctor_msg.registered_at = doctor.registered_at doctor_msg.key = doctor.key.urlsafe() return doctor_msg
def doctors_save(self, request): d = Doctor(full_name=request.full_name, specialities=request.specialities, email=request.email, invited_by=request.invited_by) d.user = d.email.split('@')[0] capitalized_name = '' for name in d.full_name.split(' '): capitalized_name = capitalized_name + name.capitalize() + ' ' d.full_name = capitalized_name d.put() return DoctorMessage(full_name=d.full_name, specialities=d.specialities, email=d.email)