def get_theme_flow(theme_name, submit_user): topic_id = p.get_pinyin(theme_name) topic_id = topic_id.lower() eid_string = es_event.get(index=special_event_name, doc_type=special_event_type, id=topic_id, fields=['event']) event_list = eid_string['fields']['event'][0].split('&') query_body = { 'query':{ 'terms':{'en_name':event_list} }, "sort": [{'start_ts':'asc'}] } name_list = es_event.search(index=event_analysis_name, doc_type=event_text_type, \ body=query_body, fields=['name', 'en_name'])['hits']['hits'] query_body2 = { 'query':{"match_all":{}}, "sort": [{'retweeted':'desc'}], 'size':1 } event_name_list = [] for i in name_list: event_name_list.append(i['fields']['en_name'][0]) print event_name_list result_list = [] for i in event_name_list: max_retweet = es_event.search(index=i, doc_type='text', body=query_body2, \ fields=['text', 'timestamp'])['hits']['hits'] print max_retweet,'00000000000' text = max_retweet[0]['fields']['text'][0] t_datetime = ts2date(max_retweet[0]['fields']['timestamp'][0]) result_list.append([i, text, t_datetime]) return result_list
def myfocus_add_event(): #加入我的关注-事件 result = 'Success' user_name = request.form['user_name'] uid = request.form['uid'] label = request.form['label'] date_time = ts2date(time.time()) if not user_name: result = 'Fail' else: old_items = db.session.query( EventAttention).filter((EventAttention.eventID == uid) & (EventAttention.name == user_name)).all() if len(old_items): result = 'Exist' else: new_item = EventAttention(name=user_name, eventID=uid, label=label, attentionTime=date_time) db.session.add(new_item) db.session.commit() result = 'Success' return json.dumps(result)
def event_river_search(eid_list): query_body = { 'query': { 'terms': { 'en_name': eid_list } } # "sort": [{sort_flag:'desc'}] } fields_list = ['time_type_weibo', 'name'] print eid_list event_detail = es_event.search(index=event_analysis_name, doc_type=event_type, \ body=query_body, _source=False, fields=fields_list)['hits']['hits'] detail_result = {} for i in event_detail: name_i = i['fields']['name'][0] single_river = [] river = json.loads(i['fields']['time_type_weibo'][0]) print name_i.encode('utf-8') for r in river: time_r = [] river_value = 0 for ki, vi in r[1].iteritems(): river_value += vi time_r.append(ts2date(r[0])) time_r.append(river_value) single_river.append(time_r) detail_result[name_i] = single_river return detail_result