script/lib/iri_tweet/utils.py
changeset 250 6334869ab06d
parent 248 ffb0a6d08000
child 253 e9335ee3cf71
--- a/script/lib/iri_tweet/utils.py	Wed Jul 27 12:29:02 2011 +0200
+++ b/script/lib/iri_tweet/utils.py	Wed Jul 27 17:23:16 2011 +0200
@@ -116,7 +116,7 @@
         if user_id:
             user = self.session.query(User).filter(User.id == user_id).first()
         else:
-            user = self.session.query(User).filter(User.screen_name == user_name).first()
+            user = self.session.query(User).filter(User.screen_name.ilike(user_name)).first()
     
         if user is not None:
             return user
@@ -134,11 +134,17 @@
             except Exception as e:
                 logging.info("get_user : TWITTER ERROR : " + repr(e)) #@UndefinedVariable
                 logging.info("get_user : TWITTER ERROR : " + str(e)) #@UndefinedVariable
+                return None
     
         user_dict = adapt_fields(user_dict, fields_adapter["stream"]["user"])
         if "id" not in user_dict:
             return None
         
+        user = self.session.query(User).filter(User.id == user_dict["id"]).first()
+        
+        if user is not None:
+            return user
+        
         user = User(**user_dict)
         
         self.session.add(user)
@@ -162,8 +168,8 @@
             text = ind.get("text", ind.get("hashtag", None))
             if text is None:
                 return None 
-            hashtag = self.session.query(Hashtag).filter(Hashtag.text == text).first()
-            if not hashtag:
+            hashtag = self.session.query(Hashtag).filter(Hashtag.text.ilike(text)).first()
+            if hashtag is None:
                 ind["text"] = text
                 hashtag = Hashtag(**ind)
                 self.session.add(hashtag)