def take_action(self, parsed_args): usernames = get_handles() # usernames = usernames[:2] # DEBUG userData = lookup_users(usernames) usernames = userData.keys() usernames = sorted(usernames, key=lambda n: userData[n]['followers_count'])[::-1] # TODO accept argument for filename self._write_dataset(userData, usernames, "astrotweeters.csv")
def take_action(self, parsedArgs): """Run the mongo builder pipeline.""" con = MongoClient(parsedArgs.host, parsedArgs.port) self.c = con[parsedArgs.dbname][parsedArgs.cname] self.cliqueCollection = con[parsedArgs.dbname][parsedArgs.clique_cname] newHandles = self._get_new_handles() if len(newHandles) == 0: self.log.info("No new users to add") else: self.log.info("Looking up users:") self.log.info(newHandles) userData = lookup_users(newHandles) for screenName, userDict in userData.iteritems(): self._insert_user(userDict) if parsedArgs.followers: self._add_followers() if parsedArgs.friends: self._add_friends() if parsedArgs.cliques: self._compute_cliques()