Exemplo n.º 1
0
 def update_email_time(cls, email, keyword, timestamp):
     """
     update emailed_time
     : keyword must be utf8
     """
     with sessionCM() as session:
         account_setting = session.query(AccountSetting).filter_by(email=email, keyword=keyword).first()
         account_setting.emailed_time = timestamp
         session.commit()
Exemplo n.º 2
0
 def get_last_time(cls, email, keyword):
     """
      return searched_time, emailed_time
     : email: AccountSetting email
     : keyword: key word of search news/weibo... ; must be utf8
     : timestamp: timestamp of search result
     """
     with sessionCM() as session:
         ret = session.query(AccountSetting).filter_by(email=email, keyword=keyword).first()
         return ret.searched_time, ret.emailed_time
Exemplo n.º 3
0
 def update_search_time(cls, email_list, keyword, timestamp):
     """
     update searched_time
     :keyword must be utf8
     """
     with sessionCM() as session:
         for email in email_list:
             account_setting = session.query(AccountSetting).filter_by(email=email, keyword=keyword).first()
             account_setting.searched_time = timestamp
             session.commit()
Exemplo n.º 4
0
    def add_words(cls, email, add_word_list):
        """
         add new search words for one email
        """
        with sessionCM() as session:
            add_word_list = [str2utf8(word)[0] for word in add_word_list]
            ret = session.query(AccountSetting).filter_by(email=email)\
                .filter(AccountSetting.keyword.in_(add_word_list)).all()
            exist_words = [str2utf8(a.keyword)[0] for a in ret]
            #if ret:
            #    print exist_words, type(ret[0].keyword), type(ret[0].email)
            need_add_words = list(set(add_word_list) - set(exist_words))
            #print need_add_words, add_word_list
            for word in need_add_words:
                new_setting = cls(email=email, keyword=word)
                session.add(new_setting)
                session.commit()

        return True
Exemplo n.º 5
0
 def get_avail_account(cls):
     with sessionCM() as session:
         return session.query(Account.email).filter_by(status=cls.AVAIL).all()
Exemplo n.º 6
0
 def create(cls, email, phone, passrd):
     new_account = cls(email, phone, passrd)
     with sessionCM() as session:
         session.add(new_account)
         session.commit()