Example #1
0
def merge_ho_ct(d_cid, d_mid, s_cid, s_mid):
    insert_ho_sql = '''
        INSERT INTO 
            msg_%s_%s_ho (`unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`, `op_system`, `browser`) 
        select 
            `unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`, `op_system`, `browser` 
        from 
            %s.msg_%s_%s_ho ;
    '''

    insert_ct_sql = '''
        INSERT INTO 
            `msg_%s_%s_ct` (`unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `url_id`, `url_value`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`) 
        select 
            `unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `url_id`, `url_value`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`
        from 
            %s.msg_%s_%s_ct ;
    '''

    # report_conn = mdb.get_report_conn(d_cid)
    # report_conn = MySQLdb.connect( host='10.10.11.202', user='******', passwd='EpCAre!@#', db='reportDB_new' )
    reportdb = grid.get_report_conn(d_cid)
    report_conn = MySQLdb.connect( host= mdb_ip, user= mdb_user, passwd= mdb_pass, db=reportdb ,charset='utf8')
    cursor = report_conn.cursor()
    # reportdb = 'reportDB_new'
    print insert_ho_sql % (d_cid, d_mid, reportdb, s_cid, s_mid)
    print insert_ct_sql % (d_cid, d_mid, reportdb, s_cid, s_mid)
    cursor.execute(insert_ho_sql % (d_cid, d_mid, reportdb, s_cid, s_mid))
    cursor.execute(insert_ct_sql % (d_cid, d_mid, reportdb, s_cid, s_mid))
    report_conn.commit()
    cursor.close()
    report_conn.close()
Example #2
0
def insert_ho_ct(cid, mid, action_time, ho_dist_num, ho_num, ct_dist_num, ct_num):
    domain_name = 'qq.com'
    insert_ho_sql = '''INSERT INTO msg_%s_%s_ho (`unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`, `op_system`, `browser`) values ''' % (cid, mid)
    insert_ho_sql += '''( %s, %s, 35811, 2, %s, 1, %s, %s, %s, '58.23.3.163', 974586787, 214, '中国', '福建', '厦门市', NULL, 'Windows 7', 'Unknown' );'''
    insert_ct_sql = '''INSERT INTO msg_%s_%s_ct (`unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `url_id`, `url_value`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`) values ''' % (cid, mid) 
    insert_ct_sql += '''(%s, %s, 35811, 2, %s, 1, %s, %s, %s, %s, %s, '58.23.3.163', 974586787, 214, '中国', '福建', '厦门市', NULL );'''

    reportdb = grid.get_report_conn(cid)
    report_conn = MySQLdb.connect( host=mdb_ip, user=mdb_user, passwd=mdb_pass, db=reportdb ,charset='utf8')
    cursor = report_conn.cursor()
    url = geturl(mid)
    url_id = url['url_id']
    url_value = (url['value']).encode('utf-8')
    src_data = src_dist_ho_ct(mid)
    src_dist_ho = int(src_data['dist_opens'])
    src_ho_num = int(src_data['html_opens'])
    src_dist_ct = int(src_data['dist_url_clicks'])
    src_ct_num = int(src_data['url_clicks'])
    if src_dist_ho >= ho_dist_num:
        ho_dist_diff = 1
    else:
        ho_dist_diff = ho_dist_num - src_dist_ho
    if src_ho_num >= ho_num:
        ho_diff = 1
    else:
        ho_diff = ho_num - src_ho_num
    if src_dist_ct >= ct_dist_num:
        ct_dist_diff = 1
    else:
        ct_dist_diff = ct_dist_num - src_dist_ct
    if src_ct_num >= ct_num:
        ct_diff = 1
    else:
        ct_diff = ct_num - src_ct_num
    ho_args_list = []
    for i in range(ho_dist_diff):
        unique_id = string.join(random.sample('0123456789abcdefghijklmnopqrstuvwxyz',8)).replace(" ","")
        email_address = '*****@*****.**' % i
        ho_args_list.append((unique_id, mid, cid, email_address, domain_name, action_time))
    for i in range(ho_diff):
        unique_id = 'h6djz8c5'
        email_address = '*****@*****.**' % i
        ho_args_list.append((unique_id, mid, cid, email_address, domain_name, action_time))
    ct_args_list = []
    for i in range(int(ct_dist_diff)):
        unique_id = string.join(random.sample('0123456789abcdefghijklmnopqrstuvwxyz',8)).replace(" ","")
        email_address = '*****@*****.**' % i
        ct_args_list.append((unique_id, mid, cid, email_address, domain_name, url_id, url_value, action_time))
    for i in range(int(ct_diff)):
        unique_id = 'h6djz8c5'
        email_address = '*****@*****.**' % i
        ct_args_list.append((unique_id, mid, cid, email_address, domain_name, url_id, url_value, action_time))
    try:
        cursor.executemany(insert_ho_sql, ho_args_list)
        cursor.executemany(insert_ct_sql, ct_args_list)
        report_conn.commit()
    except Exception,e:
        report_conn.rollback()
        print e
Example #3
0
def insert_to_hoct(cid, mid, data_file):
        unique_id = string.join(random.sample('0123456789abcdefghijklmnopqrstuvwxyz',8)).replace(" ","")
	ho_args_array, ct_args_array = read_info(mid, data_file)
    	insert_ho_sql = '''INSERT INTO msg_%s_%s_ho (`unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`, `op_system`, `browser`) values ''' % (cid, mid)
    	insert_ho_sql += '''( %s, %s, 35811, 2, %s, 1, %s, %s, %s, %s, 974586787, %s, %s, %s, %s, NULL, 'Windows 7', 'Unknown' );'''
    	insert_ct_sql = '''INSERT INTO msg_%s_%s_ct (`unique_id`, `message_id`, `list_id`, `subscriber_id`, `client_id`, `user_id`, `email_address`, `domain_name`, `url_id`, `url_value`, `action_time`, `ip`, `ip_long`, `place_id`, `country`, `province`, `city`, `point`) values ''' % (cid, mid) 
    	insert_ct_sql += '''(%s, %s, 35811, 2, %s, 1, %s, %s, %s, %s, %s, %s, 974586787, %s, %s, %s, %s, NULL );'''
        reportdb = grid.get_report_conn(cid)
        report_conn = MySQLdb.connect( host=mdb_ip, user=mdb_user, passwd=mdb_pass, db=reportdb ,charset='utf8')
        cursor = report_conn.cursor()
	try:
	    cursor.executemany(insert_ho_sql, ho_args_array)
	    cursor.executemany(insert_ct_sql, ct_args_array)
	    report_conn.commit()
	except Exception,e:
	    report_conn.rollback()
	    print e