def get(self): groupidList=[] result = urlfetch.fetch( url =setting.WEBURL+'/NeedSyncGuPiao', # payload = login_data, method = urlfetch.GET, headers = {'Content-Type':'application/x-www-form-urlencoded', 'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6'}, follow_redirects = False,deadline=20) if result.status_code == 200 : logging.info(result.content) groupidList.extend(result.content.split(',')) if groupidList: needGuPiao=memcache.get('syncgupiao') if not needGuPiao: needGuPiao=NeedSyncGuPiao.get_by_key_name('syncgupiao') if needGuPiao : for groupid in groupidList: gupiaoGroup=memcache.get('group'+groupid) if not gupiaoGroup: gupiaoGroup=GuPiaoGroup.get_by_key_name('g'+groupid) if gupiaoGroup: memcache.set('group'+groupid,gupiaoGroup,36000) if gupiaoGroup.realNo not in needGuPiao.gpcode: needGuPiao.gpcode.append(gupiaoGroup.realNo) needGuPiao.memcachegroupid.append("needsyncgupiao_groupid%s"%gupiaoGroup.key().name()) date=datetime.datetime.utcnow()+datetime.timedelta(hours =8) needGuPiao.date=date.strftime('%Y-%m-%d') needGuPiao.put() memcache.set('syncgupiao',needGuPiao,36000)
def get(self): groupid=self.request.get('groupid') dm=self.request.get('dm') type=self.request.get('type') realNo=self.request.get('realNo') gupiaoGroup=memcache.get('group'+groupid) if not gupiaoGroup: gupiaoGroup=GuPiaoGroup.get_by_key_name('g'+groupid) if gupiaoGroup: memcache.set('group'+groupid,gupiaoGroup,36000) if not gupiaoGroup: if groupid and dm and type and realNo: gupiaoGroup=GuPiaoGroup(key_name='g'+groupid) gupiaoGroup.gpcode=dm gupiaoGroup.realNo=realNo gupiaoGroup.type=type gupiaoGroup.put() memcache.set('group'+groupid,gupiaoGroup,36000) else: self.error(500) return needGuPiao=memcache.get('syncgupiao') if not needGuPiao: needGuPiao=NeedSyncGuPiao.get_by_key_name('syncgupiao') if needGuPiao and gupiaoGroup.realNo not in needGuPiao.gpcode: needGuPiao.gpcode.append(gupiaoGroup.realNo) needGuPiao.memcachegroupid.append("needsyncgupiao_groupid%s"%gupiaoGroup.key().name()) needGuPiao.put() memcache.set('syncgupiao',needGuPiao,36000) baseurl='http://hq.sinajs.cn/list=' result = urlfetch.fetch( url =baseurl+realNo, method = urlfetch.GET, headers = {'Content-Type':'application/x-www-form-urlencoded', 'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6'}, follow_redirects = False,deadline=20) if result.status_code == 200 : for gupiaostr in result.content.decode('gbk').split('\n'): if gupiaostr: gupiao_data_arr=gupiaostr[11:].split('=') # gupiao_group=memcache.get(gupiao_data_arr[0]) # if not gupiao_group: # gupiao_group=GuPiaoGroup.all().filter('realNo =',gupiao_data_arr[0]).fetch(1) # if len(gupiao_group)==1: # gupiao_group=gupiao_group[0] # memcache.set(gupiao_group.realNo,gupiao_group,3600*24*3) # else: # gupiao_group=None # if gupiao_group: # groupid=gupiao_group.key().name() # gupiaolist.append(groupid) # post_data['flag'+groupid]=gupiao_data_arr[-25:] self.response.out.write("{'groupid':'%s','realNo':'%s','type':'%s','min':'[*sys/min_%s_%s/a777_1*]','daily':'[*sys/daily_%s_%s/a777_1*]','data':'%s'}"%(groupid,realNo,type,realNo,type,realNo,type,gupiao_data_arr[1][1:-2]))
def get(self): groupid=self.request.get('groupid') gupiaoGroup=memcache.get('group'+groupid) if not gupiaoGroup: gupiaoGroup=GuPiaoGroup.get_by_key_name('g'+groupid) if gupiaoGroup: memcache.set('group'+groupid,gupiaoGroup,36000) if gupiaoGroup: baseurl='http://hq.sinajs.cn/list=' result = urlfetch.fetch( url =baseurl+gupiaoGroup.realNo, method = urlfetch.GET, headers = {'Content-Type':'application/x-www-form-urlencoded', 'User-Agent':'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6'}, follow_redirects = False,deadline=20) if result.status_code == 200 : for gupiaostr in result.content.decode('gbk').split('\n'): if gupiaostr: gupiao_data_arr=gupiaostr[11:].split('=') self.response.out.write("{'groupid':'%s','realNo':'%s','type':'%s','min':'[*sys/min_%s_%s/a777_1*]','daily':'[*sys/daily_%s_%s/a777_1*]','data':'%s'}"%(groupid,gupiaoGroup.realNo,gupiaoGroup.type,gupiaoGroup.realNo,gupiaoGroup.type,gupiaoGroup.realNo,gupiaoGroup.type,gupiao_data_arr[1][1:-2])) return else: self.error(500)