Exemple #1
0
def _get_tweets(twitter_client, current_user, since_id, max_id):
    key = "tweets_{}_{}_{}".format(current_user.token, since_id, max_id)
    value = memcache.get(key)
    if value:
        return value
    tw = Twitter(twitter_client, current_user.token, current_user.secret)
    data = tw.get_timeline(since_id, max_id)
    if data.status_code != 200:
        logger.error(data.status_code)
        return {}
    value = data.content
    memcache.set(key, value, time=30) 
    return value
Exemple #2
0
def _get_tweets(twitter_client, current_user, since_id, max_id):
    key = "tweets_{}_{}_{}".format(current_user.token, since_id, max_id)
    value = memcache.get(key)
    if value:
        return value
    tw = Twitter(twitter_client, current_user.token, current_user.secret)
    data = tw.get_timeline(since_id, max_id)
    if data.status_code != 200:
        logger.error(data.status_code)
        return {}
    value = data.content
    memcache.set(key, value, time=30)
    return value
Exemple #3
0
def _get_public(twitter_client, since_id, max_id):
    mine = LoginUser.get_mine()
    key = "public_{}_{}_{}".format(mine.token, since_id, max_id)
    value = memcache.get(key)
    if value:
        return value
    tw = Twitter(twitter_client, mine.token, mine.secret)
    data = tw.get_search("友利奈緒 OR シャーロット OR Charlotte -http", since_id, max_id)
    if data.status_code != 200:
        logger.error(data.status_code)
        return {}
    value = data.content
    memcache.set(key, value, time=30) 
    return value
Exemple #4
0
def _get_public(twitter_client, since_id, max_id):
    mine = LoginUser.get_mine()
    key = "public_{}_{}_{}".format(mine.token, since_id, max_id)
    value = memcache.get(key)
    if value:
        return value
    tw = Twitter(twitter_client, mine.token, mine.secret)
    data = tw.get_search("友利奈緒 OR シャーロット OR Charlotte -http", since_id, max_id)
    if data.status_code != 200:
        logger.error(data.status_code)
        return {}
    value = data.content
    memcache.set(key, value, time=30)
    return value
    def run(self):
        if not Twitter.table_exists():
            create_twitter_table()

        if not self.complete():

            df = pd.read_csv(self.input().path)
            df.set_index('name', inplace=True)
            for name, row in df.iterrows():
                followers = row['followers']
                following = row['following']
                likes = row['likes']
                tweets = row['tweets']

                data = {'name': name, 'followers': followers, 'following': following, 'likes': likes,
                        'tweets': tweets, 'date': self.hour}
                Twitter.add_member_data(**data)
    def complete(self):
        # TODO: Add task to create a DB/Table or
        # IDEA: Add an except for no table - create table then check databsse for complete
        if self.debug:
            clean_twitter_table()  # DEBUG: REMOVE
            print('DELETING TABLE FOR DEBUGGING!!!!!!!!!!!!!!!!!')
        try:
            local_ = pd.read_csv(self.input().path)
            dbase_ = Twitter.data_by_date(self.hour)
            print('#' * 25)
            print(len(local_))  # TODO: Logging
            print(len(dbase_))  # TODO: Logging
            # TODO: If else raise data not written to db
            print(len(local_.index) == len(dbase_.index))
            # TODO: If else raise data not written to db
            print('#' * 25)
            return len(local_.index) == len(dbase_.index)

        except (FileNotFoundError, KeyError):
            print()
            return False