Exemplo n.º 1
0
def show_out_uid(fields):
    out_list = []
    recommend_dict = r_out.hgetall("recommend_delete_list")
    recommend_keys = recommend_dict.keys()
    for iter_key in recommend_keys:
        out_list.extend(json.loads(r_out.hget("recommend_delete_list",iter_key)))
    if not out_list:
        return out_list # no one is recommended to out

    top_influence = get_top_influence("influence")
    top_activeness = get_top_influence("activeness")
    top_importance = get_top_influence("importance")
    out_list = list(set(out_list))
    return_list = []
    detail = es.mget(index=portrait_index_name, doc_type=portrait_index_type, body={"ids":out_list}, _source=True)['docs']
            # extract the return dict with the field '_source'
    filter_uid = all_delete_uid()
    for i in range(len(out_list)):
        if detail[i]['_source']['uid'] in filter_uid:
            continue
        detail_info = []
        for item in fields:
            if item == "topic":
                detail_info.append(','.join(detail[i]['_source']['topic_string'].split("&")))
            elif item == "influence":
                detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_influence)*100))
            elif item == "importance":
                detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_importance)*100))
            elif item == "activeness":
                detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_activeness)*100))
            else:
                detail_info.append(detail[i]['_source'][item])
        return_list.append(detail_info)

    return return_list
Exemplo n.º 2
0
def search_history_delete(date):
    return_list = []
    now_date = date

    top_influence = get_top_influence("influence")
    top_activeness = get_top_influence("activeness")
    top_importance = get_top_influence("importance")
    fields = ['uid','uname','domain','topic_string','influence','importance','activeness']
    temp = r_out.hget("decide_delete_list", now_date)
    if temp:
        history_uid_list = json.loads(r_out.hget("decide_delete_list", now_date))
        if history_uid_list != []:
            detail = es.mget(index=portrait_index_name, doc_type=portrait_index_type, body={"ids":history_uid_list}, _source=True)['docs']
            for i in range(len(history_uid_list)):
                detail_info = []
                for item in fields:
                    if item == "topic_string":
                        detail_info.append(','.join(detail[i]['_source'][item].split("&")))
                    elif item == "influence":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_influence)*100))
                    elif item == "importance":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_importance)*100))
                    elif item == "activeness":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_activeness)*100))
                    else:
                        detail_info.append(detail[i]['_source'][item])
                return_list.append(detail_info)

    return json.dumps(return_list)
Exemplo n.º 3
0
def search_history_delete(date):
    return_list = []
    if not date:
        now_date = time.strftime('%Y%m%d',time.localtime(time.time()))
    elif date:
        now_date = date
    else:
        pass

    fields = ['uid','uname','domain','topic_string','influence','importance','activeness']
    temp = r_out.hget("decide_delete_list", now_date)
    if temp:
        history_uid_list = json.loads(r_out.hget("decide_delete_list", now_date))
        if history_uid_list != []:
            detail = es.mget(index="user_portrait", doc_type="user", body={"ids":history_uid_list}, _source=True)['docs']
            for i in range(len(history_uid_list)):
                detail_info = []
                for item in fields:
                    if item == "topic_string":
                        detail_info.append(','.join(detail[i]['_source'][item].split("&")))
                    else:
                        detail_info.append(detail[i]['_source'][item])
                return_list.append(detail_info)

    return json.dumps(return_list)
Exemplo n.º 4
0
def show_out_uid(fields):
    out_list = []
    recommend_dict = r_out.hgetall("recommend_delete_list")
    recommend_keys = recommend_dict.keys()
    for iter_key in recommend_keys:
        out_list.extend(json.loads(r_out.hget("recommend_delete_list",iter_key)))
    if not out_list:
        return out_list # no one is recommended to out

    return_list = []
    detail = es.mget(index="user_portrait", doc_type="user", body={"ids":out_list}, _source=True)['docs']
            # extract the return dict with the field '_source'
    filter_uid = all_delete_uid()
    for i in range(len(out_list)):
        if detail[i]['_source']['uid'] in filter_uid:
            continue
        detail_info = []
        for item in fields:
            if item == "topic":
                detail_info.append(','.join(detail[i]['_source']['topic_string'].split("&")))
            else:
                detail_info.append(detail[i]['_source'][item])
        return_list.append(detail_info)

    return return_list
Exemplo n.º 5
0
def search_history_delete(date):
    return_list = []
    now_date = date

    top_influence = get_top_influence("influence")
    top_activeness = get_top_influence("activeness")
    top_importance = get_top_influence("importance")
    fields = ['uid','uname','domain','topic_string','influence','importance','activeness']
    temp = r_out.hget("decide_delete_list", now_date)
    if temp:
        history_uid_list = json.loads(r_out.hget("decide_delete_list", now_date))
        if history_uid_list != []:
            detail = es.mget(index=portrait_index_name, doc_type=portrait_index_type, body={"ids":history_uid_list}, _source=True)['docs']
            for i in range(len(history_uid_list)):
                detail_info = []
                for item in fields:
                    if item == "topic_string":
                        detail_info.append(','.join(detail[i]['_source'][item].split("&")))
                    elif item == "influence":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_influence)*100))
                    elif item == "importance":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_importance)*100))
                    elif item == "activeness":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_activeness)*100))
                    else:
                        detail_info.append(detail[i]['_source'][item])
                return_list.append(detail_info)

    return json.dumps(return_list)
Exemplo n.º 6
0
def show_all_out():
    delete_dict = r_out.hgetall('decide_delete_list')
    delete_keys_list = delete_dict.keys()
    recommend_out_list = []
    for iter_key in delete_keys_list:
        try:
            temp = json.loads(r_out.hget('decide_delete_list', iter_key))
        except:
            temp = []
        recommend_out_list.extend(temp)
    recommend_out_list = list(set(recommend_out_list))
    #print recommend_out_list

    top_influence = get_top_influence("influence")
    top_activeness = get_top_influence("activeness")
    top_importance = get_top_influence("importance")
    return_list = []
    fields = [
        'uid', 'uname', 'domain', 'topic_string', 'influence', 'importance',
        'activeness'
    ]
    if recommend_out_list:
        detail = es.mget(index=portrait_index_name,
                         doc_type=portrait_index_type,
                         body={"ids": recommend_out_list},
                         _source=True)['docs']
        for i in range(len(detail)):
            detail_info = []
            if detail[i]['found']:
                for item in fields:
                    if item == "topic_string":
                        detail_info.append(','.join(
                            detail[i]['_source'][item].split('&')))
                    elif item == "influence":
                        detail_info.append(
                            math.ceil(detail[i]["_source"][item] /
                                      float(top_influence) * 100))
                    elif item == "importance":
                        detail_info.append(
                            math.ceil(detail[i]["_source"][item] /
                                      float(top_importance) * 100))
                    elif item == "activeness":
                        detail_info.append(
                            math.ceil(detail[i]["_source"][item] /
                                      float(top_activeness) * 100))
                    else:
                        detail_info.append(detail[i]['_source'][item])
            else:
                detail_info = [detail[i]['_id'], [], [], [], [], [], []]

            return_list.append(detail_info)

    return json.dumps(return_list)
Exemplo n.º 7
0
def ajax_cancel_delete():
    data = request.args.get('data','') # uid,uid
    date = request.args.get('date', '') # date, 2013-09-01
    if not data or not date:
        return "no one cancelled"
    else:
        uid_list = data.split(',')
        delete_list = json.loads(r_out.hget('decide_delete_list',date))
        revise_list = list(set(delete_list).difference(set(uid_list)))
        r_out.hset('decide_delete_list', date, json.dumps(revise_list))

        update_record_index(uid_list) #temporary 

    return json.dumps(1)
Exemplo n.º 8
0
def ajax_cancel_delete():
    data = request.args.get('data', '')  # uid,uid
    date = request.args.get('date', '')  # date, 2013-09-01
    if not data or not date:
        return "no one cancelled"
    else:
        uid_list = data.split(',')
        delete_list = json.loads(r_out.hget('decide_delete_list', date))
        revise_list = list(set(delete_list).difference(set(uid_list)))
        r_out.hset('decide_delete_list', date, json.dumps(revise_list))

        update_record_index(uid_list)  #temporary

    return json.dumps(1)
Exemplo n.º 9
0
def ajax_cancel_recommend_out():
    date = request.args.get('date', '') # date, 2013-09-01
    uid_list = request.args.get('uid_list', '') # uid_list, 12345,123456,

    if not date or not uid_list:
        return "no define date or uid_list"
    else:
        uid_list = str(uid_list).split(',')

        recommend_list = json.loads(r_out.hget('recommend_delete_list',date))
        revise_list = list(set(recommend_list).difference(set(uid_list)))
        r_out.hset('recommend_delete_list',date, json.dumps(revise_list))

        update_record_index(uid_list) # 更改low number使之不再推荐

    return json.dumps(1)
Exemplo n.º 10
0
def ajax_search_delete():
    date = request.args.get('date', '') # date, 2013-09-01
    uid_list = request.args.get('uid_list', '') # uid_list, 12345,123456,

    if not date or not uid_list:
        return "no define date or uid_list"
    else:
        remove_list = str(uid_list).split(',')

        temp = r_out.hget('decide_delete_list', date)
        if temp:
            exist_data = json.loads(r_out.hget('decide_delete_list',date))
            remove_list.extend(exist_data)
        r_out.hset('decide_delete_list', date, json.dumps(remove_list))

    return json.dumps(1)
Exemplo n.º 11
0
def ajax_cancel_recommend_out():
    date = request.args.get('date', '')  # date, 2013-09-01
    uid_list = request.args.get('uid_list', '')  # uid_list, 12345,123456,

    if not date or not uid_list:
        return "no define date or uid_list"
    else:
        uid_list = str(uid_list).split(',')

        recommend_list = json.loads(r_out.hget('recommend_delete_list', date))
        revise_list = list(set(recommend_list).difference(set(uid_list)))
        r_out.hset('recommend_delete_list', date, json.dumps(revise_list))

        update_record_index(uid_list)  # 更改low number使之不再推荐

    return json.dumps(1)
Exemplo n.º 12
0
def ajax_search_delete():
    date = request.args.get('date', '')  # date, 2013-09-01
    uid_list = request.args.get('uid_list', '')  # uid_list, 12345,123456,

    if not date or not uid_list:
        return "no define date or uid_list"
    else:
        remove_list = str(uid_list).split(',')

        temp = r_out.hget('decide_delete_list', date)
        if temp:
            exist_data = json.loads(r_out.hget('decide_delete_list', date))
            remove_list.extend(exist_data)
        r_out.hset('decide_delete_list', date, json.dumps(remove_list))

    return json.dumps(1)
Exemplo n.º 13
0
def show_out_uid():
    fields = ["uid", "uname", "location", "statusnum", "fansnum", "domain", "topic_string", "importance", "influence", "activeness", "sensitive"]
    out_list = []
    recommend_dict = r_out.hgetall("recommend_delete_list")
    recommend_keys = recommend_dict.keys()
    for iter_key in recommend_keys:
        out_list.extend(json.loads(r_out.hget("recommend_delete_list",iter_key)))
    if not out_list:
        return out_list # no one is recommended to out

    top_influence = get_top_influence("influence")
    top_activeness = get_top_influence("activeness")
    top_importance = get_top_influence("importance")
    top_sensitive = get_top_influence("sensitive")
    out_list = list(set(out_list))
    return_list = []
    #bci_history_result = es_bci_history.mget(index=bci_history_index_name, doc_type=bci_history_index_type, body={"ids":out_list}, fields=['user_fansnum', 'weibo_month_sum'])['docs']
    detail = es.mget(index=portrait_index_name, doc_type=portrait_index_type, body={"ids":out_list}, _source=True)['docs']
    # extract the return dict with the field '_source'
    filter_uid = all_delete_uid()
    if out_list:
        for i in range(len(out_list)):
            if detail[i]['_id'] in filter_uid:
                continue
            detail_info = []
            for item in fields:
                if item == "topic_string":
                    detail_info.append(','.join(detail[i]['_source']['topic_string'].split("&")))
                elif item == "influence":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_influence) * 9 + 1, 10)*100)
                elif item == "importance":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_importance)*9 + 1, 10)*100)
                elif item == "activeness":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_activeness)*9 + 1, 10)*100)
                elif item == "sensitive":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_sensitive)*9 + 1, 10)*100)
                else:
                    detail_info.append(detail[i]['_source'][item])
            return_list.append(detail_info)

    return return_list
Exemplo n.º 14
0
def show_out_uid():
    fields = ["uid", "uname", "location", "statusnum", "fansnum", "domain", "topic_string", "importance", "influence", "activeness", "sensitive"]
    out_list = []
    recommend_dict = r_out.hgetall("recommend_delete_list")
    recommend_keys = recommend_dict.keys()
    for iter_key in recommend_keys:
        out_list.extend(json.loads(r_out.hget("recommend_delete_list",iter_key)))
    if not out_list:
        return out_list # no one is recommended to out

    top_influence = get_top_influence("influence")
    top_activeness = get_top_influence("activeness")
    top_importance = get_top_influence("importance")
    top_sensitive = get_top_influence("sensitive")
    out_list = list(set(out_list))
    return_list = []
    #bci_history_result = es_bci_history.mget(index=bci_history_index_name, doc_type=bci_history_index_type, body={"ids":out_list}, fields=['user_fansnum', 'weibo_month_sum'])['docs']
    detail = es.mget(index=portrait_index_name, doc_type=portrait_index_type, body={"ids":out_list}, _source=True)['docs']
    # extract the return dict with the field '_source'
    filter_uid = all_delete_uid()
    if out_list:
        for i in range(len(out_list)):
            if detail[i]['_id'] in filter_uid:
                continue
            detail_info = []
            for item in fields:
                if item == "topic_string":
                    detail_info.append(','.join(detail[i]['_source']['topic_string'].split("&")))
                elif item == "influence":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_influence) * 9 + 1, 10)*100)
                elif item == "importance":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_importance)*9 + 1, 10)*100)
                elif item == "activeness":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_activeness)*9 + 1, 10)*100)
                elif item == "sensitive":
                    detail_info.append(math.log(detail[i]["_source"][item]/float(top_sensitive)*9 + 1, 10)*100)
                else:
                    detail_info.append(detail[i]['_source'][item])
            return_list.append(detail_info)

    return return_list
Exemplo n.º 15
0
def decide_out_uid(date, data):
    uid_list = []
    now_date = time.strftime("%Y%m%d", time.localtime(time.time()))
    if data:
        uid_list = data.split(",") # decide to delete uids
        exist_data = r_out.hget("decide_delete_list", now_date)
        if exist_data and exist_data != []:
            uid_list.extend(json.loads(exist_data))
            uid_list = list(set(uid_list))
        r_out.hset("decide_delete_list", now_date, json.dumps(uid_list))

    """
    if uid_list and uid_list != []:
        update_record_index(not_out_list)
    """
    filter_uid = all_delete_uid()
    uid_list = data.split(",")
    current_date_list = json.loads(r_out.hget("recommend_delete_list", date))
    new_list =  list(set(current_date_list).difference(set(uid_list)))
    new_list = list(set(new_list).difference(filter_uid))
    r_out.hset("recommend_delete_list", date, json.dumps(new_list))

    """
    if uid_list:
        temp = r_out.hget("history_delete_list", now_date)
        if temp:
            exist_data = json.loads(r_out.hget("history_delete_list", now_date))
            uid_list.extend(exist_data)
        r_out.hset("history_delete_list", now_date, json.dumps(uid_list))

    """
    return 1
Exemplo n.º 16
0
def show_all_out():
    delete_dict = r_out.hgetall('decide_delete_list')
    delete_keys_list = delete_dict.keys()
    recommend_out_list = []
    for iter_key in delete_keys_list:
        try:
            temp = json.loads(r_out.hget('decide_delete_list', iter_key))
        except:
            temp = []
        recommend_out_list.extend(temp)
    recommend_out_list = list(set(recommend_out_list))
    #print recommend_out_list

    top_influence = get_top_influence("influence")
    top_activeness = get_top_influence("activeness")
    top_importance = get_top_influence("importance")
    return_list = []
    fields = ['uid','uname','domain','topic_string','influence','importance','activeness']
    if recommend_out_list:
        detail = es.mget(index=portrait_index_name, doc_type=portrait_index_type, body={"ids":recommend_out_list}, _source=True)['docs']
        for i in range(len(detail)):
            detail_info = []
            if detail[i]['found']:
                for item in fields:
                    if item == "topic_string":
                        detail_info.append(','.join(detail[i]['_source'][item].split('&')))
                    elif item == "influence":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_influence)*100))
                    elif item == "importance":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_importance)*100))
                    elif item == "activeness":
                        detail_info.append(math.ceil(detail[i]["_source"][item]/float(top_activeness)*100))
                    else:
                        detail_info.append(detail[i]['_source'][item])
            else:
                detail_info = [detail[i]['_id'],[],[],[],[],[],[]]

            return_list.append(detail_info)

    return json.dumps(return_list)
Exemplo n.º 17
0
def show_all_out():
    delete_dict = r_out.hgetall('decide_delete_list')
    delete_keys_list = delete_dict.keys()

    return_list = []
    fields = ['uid','uname','domain','topic_string','influence','importance','activeness']
    for iter_key in delete_keys_list:
        temp_list = []
        temp = json.loads(r_out.hget('decide_delete_list', iter_key))
        if temp and temp != []:
            detail = es.mget(index="user_portrait", doc_type="user", body={"ids":temp}, _source=True)['docs']
            for i in range(len(temp)):
                detail_info = []
                for item in fields:
                    if item == "topic_string":
                        detail_info.append(','.join(detail[i]['_source'][item].split('&')))
                    else:
                        detail_info.append(detail[i]['_source'][item])

                return_list.append(detail_info)

    return json.dumps(return_list)
Exemplo n.º 18
0
def decide_out_uid(date, data):  # 日期:2016-02-26;data:uid,uid
    uid_list = []
    now_date = date
    if data:
        uid_list = data.split(",")  # decide to delete uids
        exist_data = r_out.hget("decide_delete_list", now_date)
        if exist_data:
            uid_list.extend(json.loads(exist_data))
            uid_list = list(set(uid_list))
        r_out.hset("decide_delete_list", now_date, json.dumps(uid_list))

    #从推荐出库的recommend_list中去除已经决定出库的人
    filter_uid = all_delete_uid()
    uid_list = data.split(",")
    current_date_list = json.loads(r_out.hget("recommend_delete_list", date))
    new_list = list(set(current_date_list).difference(set(uid_list)))
    new_list = list(set(new_list).difference(filter_uid))
    r_out.hset("recommend_delete_list", date, json.dumps(new_list))

    return 1
Exemplo n.º 19
0
def decide_out_uid(date, data): # 日期:2016-02-26;data:uid,uid
    uid_list = []
    now_date = date
    if data:
        uid_list = data.split(",") # decide to delete uids
        exist_data = r_out.hget("decide_delete_list", now_date)
        if exist_data:
            uid_list.extend(json.loads(exist_data))
            uid_list = list(set(uid_list))
        r_out.hset("decide_delete_list", now_date, json.dumps(uid_list))


    #从推荐出库的recommend_list中去除已经决定出库的人
    filter_uid = all_delete_uid()
    uid_list = data.split(",")
    current_date_list = json.loads(r_out.hget("recommend_delete_list", date))
    new_list =  list(set(current_date_list).difference(set(uid_list)))
    new_list = list(set(new_list).difference(filter_uid))
    r_out.hset("recommend_delete_list", date, json.dumps(new_list))

    return 1