Ejemplo n.º 1
0
def list_cred_details():
    for creds in TwitterCredentials.get_all(postgres_handle):
        creds_user = creds.twitter_user
        root_user = creds.root_user
        creds_username = creds_user.screen_name if creds_user else 'None'
        root_username = root_user.screen_name if root_user else 'None'
        last_api_query = creds.last_root_user_api_query if creds.last_root_user_api_query else datetime(
            2000, 1, 1)

        print '%s %s %s' % (
            string.ljust(creds_username, 20), string.ljust(root_username, 20),
            string.ljust(creds.email if creds.email else '', 30))
def list_cred_details():
    for creds in TwitterCredentials.get_all(postgres_handle):
        creds_user = creds.twitter_user
        root_user = creds.root_user
        creds_username = creds_user.screen_name if creds_user else 'None'
        root_username = root_user.screen_name if root_user else 'None'
        last_api_query = creds.last_root_user_api_query if creds.last_root_user_api_query else datetime(2000,1,1)

        print '%s %s %s' % (
            string.ljust(creds_username, 20),
            string.ljust(root_username, 20), 
            string.ljust(creds.email if creds.email else '', 30)
        )
def list_cred_details():
    for creds in TwitterCredentials.get_all(postgres_handle):
        creds_user = creds.twitter_user
        root_user = creds.root_user
        creds_username = creds_user.screen_name if creds_user else 'None'
        root_username = root_user.screen_name if root_user else 'None'
        last_api_query = creds.last_root_user_api_query if creds.last_root_user_api_query else datetime(2000,1,1)

        print 'Creds for: %s \t Email: %s \t Root users: %s \t Created: %s \t Last_api_query: %s' % (
            string.ljust(creds_username, 12),
            string.ljust(creds.email if creds.email else '', 30),
            string.ljust(root_username, 12), 
            creds.createddate.strftime('%y_%m_%d'),
            last_api_query.strftime('%y_%m_%d'),
        )
Ejemplo n.º 4
0
def list_cred_details():
    for creds in TwitterCredentials.get_all(postgres_handle):
        creds_user = creds.twitter_user
        root_user = creds.root_user
        creds_username = creds_user.screen_name if creds_user else 'None'
        root_username = root_user.screen_name if root_user else 'None'
        last_api_query = creds.last_root_user_api_query if creds.last_root_user_api_query else datetime(
            2000, 1, 1)

        print 'Creds for: %s \t Email: %s \t Root users: %s \t Created: %s \t Last_api_query: %s' % (
            string.ljust(creds_username, 12),
            string.ljust(creds.email if creds.email else '', 30),
            string.ljust(root_username, 12),
            creds.createddate.strftime('%y_%m_%d'),
            last_api_query.strftime('%y_%m_%d'),
        )
Ejemplo n.º 5
0
    root_user = load_user_and_the_people_they_follow(api_handle,
                                                     root_user.id,
                                                     postgres_handle,
                                                     is_root_user=True)
    load_this_user_id = root_user.get_id_of_someone_in_my_network_to_load()
    while load_this_user_id:
        load_user_and_the_people_they_follow(api_handle, load_this_user_id,
                                             postgres_handle)
        load_this_user_id = root_user.get_id_of_someone_in_my_network_to_load()
        #load_this_user_id = None
    print "Finshed loading all related users for %s!" % root_user.screen_name


if __name__ == "__main__":
    postgres_handle = PostgresHandle(smarttypes.connection_string)
    max_processes = 4
    i = 0
    for creds in TwitterCredentials.get_all(
            postgres_handle, order_by='last_root_user_api_query'):
        if i >= max_processes:
            break
        root_user = creds.root_user
        if root_user:
            print "Starting a process to load root user: %s" % root_user.screen_name
            creds.last_root_user_api_query = datetime.now()
            creds.save()
            postgres_handle.connection.commit()
            p = Process(target=pull_some_users, args=(root_user.id, ))
            p.start()
            i += 1
Ejemplo n.º 6
0
    creds = TwitterCredentials.get_by_access_key(access_key, postgres_handle)
    root_user = load_user_and_the_people_they_follow(creds, creds.root_user_id, postgres_handle)
    
    load_this_user_id = root_user.get_id_of_someone_in_my_network_to_load()
    while load_this_user_id:
        load_user_and_the_people_they_follow(creds, load_this_user_id, postgres_handle)
        load_this_user_id = root_user.get_id_of_someone_in_my_network_to_load()
        #load_this_user_id = None
    print "Finished loading all related users for %s!" % root_user.screen_name


if __name__ == "__main__":
    postgres_handle = PostgresHandle(smarttypes.connection_string)
    max_processes = 8
    i = 0
    for creds in TwitterCredentials.get_all(postgres_handle, order_by='last_root_user_api_query'):
        if i >= max_processes:
            break

        #this can happen because this script is run on a different db than the webserver
        #this is only a temporary problem because i'm poor
        #see scripts/check_for_db_updates.py - root_user code for related research
        if creds.twitter_id and not creds.twitter_user:
            TwitterUser.upsert_from_api_user(creds.api_handle.me(), postgres_handle)
            postgres_handle.connection.commit()

        if creds.root_user_id and not creds.root_user:
            root_user = creds.api_handle.get_user(user_id=creds.root_user_id)
            TwitterUser.upsert_from_api_user(root_user, postgres_handle)
            postgres_handle.connection.commit()
Ejemplo n.º 7
0
        group_graph.add_edges_from(group_edges)
        pagerank = networkx.pagerank(group_graph, max_iter=500)
        scores = []
        for user_id in user_ids:
            scores.append(pagerank.get(user_id, 0))
        groups.append(TwitterGroup.create_group(twitter_reduction.id, i, user_ids, scores,
            postgres_handle))
    postgres_handle.connection.commit()

    ###########################################
    ##makes for quicker queries in some cases
    ###########################################
    twitter_reduction.save_group_info(postgres_handle)
    postgres_handle.connection.commit()

    ###########################################
    ##mk_tag_clouds
    ###########################################
    TwitterGroup.mk_tag_clouds(twitter_reduction.id, postgres_handle)
    postgres_handle.connection.commit()


if __name__ == "__main__":
    postgres_handle = PostgresHandle(smarttypes.connection_string)
    for creds in TwitterCredentials.get_all(postgres_handle):
        root_user = creds.root_user
        if root_user and root_user.screen_name == 'SmartTypes':
            #distance = int(400 / (root_user.following_count / 100.0))
            distance = 1000
            reduce_graph(root_user.screen_name, distance=distance, min_followers=60)
Ejemplo n.º 8
0
        for user_id in user_ids:
            scores.append(pagerank.get(user_id, 0))
        groups.append(
            TwitterGroup.create_group(twitter_reduction.id, i, user_ids,
                                      scores, postgres_handle))
    postgres_handle.connection.commit()

    ###########################################
    ##makes for quicker queries in some cases
    ###########################################
    twitter_reduction.save_group_info(postgres_handle)
    postgres_handle.connection.commit()

    ###########################################
    ##mk_tag_clouds
    ###########################################
    TwitterGroup.mk_tag_clouds(twitter_reduction.id, postgres_handle)
    postgres_handle.connection.commit()


if __name__ == "__main__":
    postgres_handle = PostgresHandle(smarttypes.connection_string)
    for creds in TwitterCredentials.get_all(postgres_handle):
        root_user = creds.root_user
        if root_user and root_user.screen_name == 'SmartTypes':
            #distance = int(400 / (root_user.following_count / 100.0))
            distance = 1000
            reduce_graph(root_user.screen_name,
                         distance=distance,
                         min_followers=60)