diff -r d3b86c65c980 -r b9243ade95e2 script/lib/iri_tweet/utils.py --- a/script/lib/iri_tweet/utils.py Tue Dec 20 16:26:34 2011 +0100 +++ b/script/lib/iri_tweet/utils.py Sat Jan 07 16:12:44 2012 +0100 @@ -10,6 +10,7 @@ import logging import os.path import sys +import math import twitter.oauth #@UnresolvedImport import twitter.oauth_dance #@UnresolvedImport import twitter_text #@UnresolvedImport @@ -171,7 +172,7 @@ class TwitterProcessor(object): - def __init__(self, json_dict, json_txt, source_id, session, access_token=None, token_filename=None): + def __init__(self, json_dict, json_txt, source_id, session, access_token=None, token_filename=None, user_query_twitter=False): if json_dict is None and json_txt is None: raise TwitterProcessorException("No json") @@ -194,10 +195,11 @@ self.token_filename = token_filename self.access_token = access_token self.obj_buffer = ObjectsBuffer() + self.user_query_twitter = user_query_twitter - def __get_user(self, user_dict, do_merge, query_twitter = False): + def __get_user(self, user_dict, do_merge): get_logger().debug("Get user : " + repr(user_dict)) #@UndefinedVariable user_dict = adapt_fields(user_dict, fields_adapter["stream"]["user"]) @@ -243,7 +245,7 @@ user_created_at = user_dict.get("created_at", None) - if user_created_at is None and query_twitter: + if user_created_at is None and self.user_query_twitter: if self.access_token is not None: acess_token_key, access_token_secret = self.access_token @@ -333,7 +335,7 @@ return EntityHashtag, entity_dict def process_user_mentions(): - user_mention = self.__get_user(ind, False, False) + user_mention = self.__get_user(ind, False) if user_mention is None: entity_dict['user_id'] = None else: @@ -598,3 +600,17 @@ raise except: self.handleError(record) + +def show_progress(current_line, total_line, label, width): + + percent = (float(current_line) / float(total_line)) * 100.0 + + marks = math.floor(width * (percent / 100.0)) + spaces = math.floor(width - marks) + + loader = u'[' + (u'=' * int(marks)) + (u' ' * int(spaces)) + u']' + + sys.stdout.write(u"%s %d%% %d/%d - %r\r" % (loader, percent, current_line - 1, total_line - 1, label[:50].rjust(50))) #takes the header into account + if percent >= 100: + sys.stdout.write("\n") + sys.stdout.flush()