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'), )
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'), )
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
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()
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)
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)