コード例 #1
0
ファイル: user_network.py プロジェクト: zueve/exnesstest
def user_network():
    """
    Start iteration process for load data to user_network

    """
    log = get_logger()
    with get_connect() as con, get_connect_iptable() as con_ip:
        cur = con.cursor()
        cur_ip = con_ip.cursor()
        # get settings
        settings = get_settings(cur)
        load_date_start = datetime.strptime(settings['LOAD_DATE_START'],
                                            '%Y.%m.%d %H:%M:%S.%f')
        load_pause = int(settings['LOAD_PAUSE'])
        load_pause_empty = int(settings['LOAD_PAUSE_EMPTY'])
        cnt_rows = int(settings['LOAD_ROWS'])

        while True:
            date = user_network_load(cur_ip, cur, load_date_start, cnt_rows)
            log.info("Load data. load_date_start: %s", date)
            # save date between iterations
            if date > load_date_start:
                sql = "update load_settings set value=%s where param=%s"
                date_str = datetime.strftime(date, '%Y.%m.%d %H:%M:%S.%f')
                cur.execute(sql, [date_str, 'LOAD_DATE_START'])
            else:
                # sleep if not new data
                log.debug("No new data sleep( %s )", load_pause_empty)
                time.sleep(load_pause_empty)
            if load_pause:
                log.debug("sleep between loads sleep( %s )", load_pause)
                time.sleep(load_pause)
            load_date_start = date
コード例 #2
0
ファイル: views.py プロジェクト: freephys/mylab
def download(request):
    #下载分析结果
    taskcontent = request.POST.get('taskcontent', '')
    filename = taskcontent+'.xls' if taskcontent else 'result.xls'
    response = HttpResponse(mimetype="applicationnd.ms-excel")
    response['Content-Disposition'] = 'attachment; filename=%s' % filename
    if taskcontent:
        cursor = get_connect()
        sql = '''select b.screen_name, a.* from report a join tasklist b on a.uid=b.uid where a.day=%s'''
        cursor.execute(sql, (taskcontent, ))
        res = cursor.fetchall()
        if res:
            wb = write_excel(res)
            wb.save(response)
    return response
コード例 #3
0
ファイル: update_zombie.py プロジェクト: freephys/mylab
        uid, weitext = res
        weitext = ast.literal_eval(weitext)
        dic = {}
        fields = ['id', 'reposts_count', 'comments_count', 'pid']
        [dic.update({i:weitext.get(i, 0)}) for i in fields]
        user = weitext.get('user', {})
        user_fields = ['statuses_count', 'location', 'friends_count', 'profile_image_url', 'screen_name', 'verified_type',
                       'followers_count', 'favourites_count', 'bi_followers_count', 'gender']
        [dic.update({i:user.get(i, '')}) for i in user_fields]
        dic['description'] = user.get('description', '')
        dic['uid'] = user.get('id', '')
        dic['user_created_at'] = fmt_create_at(user.get('created_at', ''))
        days2now = int(time.mktime(dic['user_created_at'].timetuple()))
        date.update({dic['uid']: [dic['bi_followers_count'], dic['statuses_count'], dic['friends_count'], days2now, dic['followers_count'],
                             dic['favourites_count'], 0 if dic['verified_type'] == -1 else 1,  dic['verified_type'], 
                             0 if dic['gender'] == 'f' else 1, len(dic['description'])]})
        n += 1
        if n%200 == 0:
            update_sql(table_name, date)
            n = 0
            date = {}
            tids = {}
    update_sql(table_name, date)
            
if __name__ == "__main__":
    print 'start'
    cursor = get_connect()
    update(cursor, 'interact_tweet_2013_12')
    cursor.close()
    print 'end'
    
コード例 #4
0
ファイル: update_zombie.py プロジェクト: duanzhenchun/mylab
        [dic.update({i: user.get(i, '')}) for i in user_fields]
        dic['description'] = user.get('description', '')
        dic['uid'] = user.get('id', '')
        dic['user_created_at'] = fmt_create_at(user.get('created_at', ''))
        days2now = int(time.mktime(dic['user_created_at'].timetuple()))
        date.update({
            dic['uid']: [
                dic['bi_followers_count'], dic['statuses_count'],
                dic['friends_count'], days2now, dic['followers_count'],
                dic['favourites_count'],
                0 if dic['verified_type'] == -1 else 1, dic['verified_type'],
                0 if dic['gender'] == 'f' else 1,
                len(dic['description'])
            ]
        })
        n += 1
        if n % 200 == 0:
            update_sql(table_name, date)
            n = 0
            date = {}
            tids = {}
    update_sql(table_name, date)


if __name__ == "__main__":
    print 'start'
    cursor = get_connect()
    update(cursor, 'interact_tweet_2013_12')
    cursor.close()
    print 'end'
コード例 #5
0
ファイル: views.py プロジェクト: freephys/mylab
def home(request):
    cursor = get_connect()
    sqlcmd = 'select DISTINCT(`day`)  from report  ORDER BY day desc'
    cursor.execute(sqlcmd)
    res = cursor.fetchall()
    return render_to_response('tasklist.html', {'rows':res})