diff --git a/twiderboard.db b/twiderboard.db index bd9d09c..426f468 100644 Binary files a/twiderboard.db and b/twiderboard.db differ diff --git a/twiderboard/counter.py b/twiderboard/counter.py index 1f76bb5..804a8b4 100644 --- a/twiderboard/counter.py +++ b/twiderboard/counter.py @@ -64,18 +64,19 @@ class Counter(): # Checking if we already have such a member reslen = len(m_query.all()) if reslen == 1: - print "I found a member. I have to update it" + #print "I found a member. I have to update it" self.update(m_query.first(), tweet) elif reslen == 0: - print "I have to create a new member." + #print "I have to create a new member." self.create(tweet) else: - print "Error, can't get more than one member. Exiting" + #print "Error, can't get more than one member. Exiting" raise ElementException # FIXME : Take care self.flush() except ElementException: print "Exception on %s " % (tweet) + def update(self, member, tweet): """ Updates member values. @@ -101,7 +102,7 @@ class Counter(): author/hashtag couple. """ if (tweet.has_author() and tweet.has_hashtag()): - member = Member(tweet.author, tweet.hashtag) + member = Member(tweet.author, tweet.hashtag, 1) self.session.add(member) # sets tweet to crawled state @@ -148,4 +149,4 @@ class ElementException(Exception): c = Counter(engine_url) c.count() -c.member_show() \ No newline at end of file +#c.member_show() \ No newline at end of file diff --git a/twiderboard/datamodel.py b/twiderboard/datamodel.py index f51e556..257f996 100644 --- a/twiderboard/datamodel.py +++ b/twiderboard/datamodel.py @@ -30,12 +30,12 @@ class Member(Base): updated = Column(DateTime) # date of last count update count = Column(Integer) # Number of tweets for this couple author/hashtag - def __init__(self, author, hashtag): + def __init__(self, author, hashtag, count=0): self.author = author self.hashtag = hashtag self.created = datetime.datetime.now() self.updated = datetime.datetime.now() - self.count = 0 + self.count = count def increment(self): """ @@ -122,4 +122,8 @@ class Tweet(Base): return (len(self.hashtag) != 0 and self.hashtag is not None) def __repr__(self): - return "<%s('%s','%s', '%s')>" % (self.author.encode("UTF-8"), self.created, self.hashtag.encode("UTF-8"), self.text.encode("UTF-8")) + # FIXME: Solve this! + try: + return "<%s('%s','%s', '%s')>" % (self.author.encode("UTF-8"), self.created, self.hashtag.encode("UTF-8"), self.text.encode("UTF-8")) + except UnicodeDecodeError: + return "Contains Unicode!!"