def createApp(self, appid=None): url = 'https://appengine.google.com/start/createapp' res = self.web.get_page(url) if appid is None: appid = text.rnd_str(11) data = text.get_hidden(res) data.update({ 'app_id' : appid, 'title' : appid, 'tos_accept' : 'on', 'auth_domain' : '', 'auth_config' : 'google', 'submit' : 'Create Application', }) posturl = "https://appengine.google.com/start/createapp.do" res = self.web.get_page(posturl, data, headers={'referer' : url}) if res is None: return False file('a.html', 'w').write(res) if self.web.resp.url.find('/start/createapp_success?app_id=%s' % appid) != -1: return appid else: if str(res).find('Cannot create any more apps') != -1: raise 'Limit' return False
def getLoginData(self, data): all = text.get_hidden(data) all.update({ 'Email' : self.name, 'Passwd' : self.psw, 'rmShown' : '0', }) return all
def do_submit(self, page): form = get_in(page, '<form name="fmHF" id="fmHF"', '</form>') if form is None: return page action = get_in(form, 'action="', '"') data = get_hidden(form) page = self.web.get_page(action, data, {'referer': self.web.url}) return page
def do_submit(self, page): form = get_in(page, '<form name="fmHF" id="fmHF"', '</form>') if form is None: return page action = get_in(form, 'action="', '"') data = get_hidden(form) page = self.web.get_page(action, data, {'referer' : self.web.url}) return page
def _login(self, to=None, login_page=None): login_page = self.web.get_page(self.APP_URL) url = self.get_auto_refresh_url(login_page) logging.error('url %s', url) if url and url.find('cid-') != -1: return True if url: login_page = self.web.get_page(url) post_url = get_in(login_page, "srf_uPost='", "'") logging.error('post_url %s', post_url) data = get_hidden(login_page) data.update({ 'login': self.name, 'passwd': self.psw, 'NewUser': '******', }) #req = urllib2.Request(url, data=data, headers=headers) result = self.web.get_page(post_url, data=data) if result is None: return False if result.find('onload="javascript:DoSubmit();"') != -1: active_page = self.web.submit(result) result = self.active(active_page) url = self.get_auto_refresh_url(result) logging.error('finish %s', url) if url.find('profile.live.com/') != -1: #self.process_cookies() return True if self.web.url.lower().find('jsDisabled.srf') != -1: if result.find('action="https://security.live.com') != -1: self.error('Disable') raise DisabledException else: self.error('Auth Fail') raise AuthFailException return False
def _login(self, to = None, login_page=None): login_page = self.web.get_page(self.APP_URL) url = self.get_auto_refresh_url(login_page) logging.error('url %s', url) if url and url.find('cid-') != -1: return True if url: login_page = self.web.get_page(url) post_url = get_in(login_page, "srf_uPost='", "'") logging.error('post_url %s', post_url) data = get_hidden(login_page) data.update({'login' : self.name, 'passwd' : self.psw, 'NewUser' : '1', }) #req = urllib2.Request(url, data=data, headers=headers) result = self.web.get_page(post_url, data=data) if result is None: return False if result.find('onload="javascript:DoSubmit();"') != -1: active_page = self.web.submit(result) result = self.active(active_page) url = self.get_auto_refresh_url(result) logging.error('finish %s', url) if url.find('profile.live.com/') != -1: #self.process_cookies() return True if self.web.url.lower().find('jsDisabled.srf') != -1: if result.find('action="https://security.live.com') != -1: self.error('Disable') raise DisabledException else: self.error('Auth Fail') raise AuthFailException return False