Ejemplo n.º 1
0
def process_2():
    with closing(database.session()) as session:
        session.query(
            models.tweet,
        ).filter(
            models.tweet.created_at <= datetime.now() - timedelta(days=7),
        ).delete(
            synchronize_session=False,
        )
        session.commit()
Ejemplo n.º 2
0
def twitter_1(id):
    log.write(10, id, 1)
    with closing(database.session()) as session:
        handle = session.query(models.handle).get(id)
        log.write(10, handle.screen_name, 1)
        tweets = []
        for tweet in twitter.get_tweets('from:%(screen_name)s' % {
            'screen_name': handle.screen_name,
        }):
            tweets.append(tweet)
        for tweet in twitter.get_tweets('@%(screen_name)s' % {
            'screen_name': handle.screen_name,
        }):
            tweets.append(tweet)
        seven_days_ago = datetime.now() - timedelta(days=7)
        for tweet in tweets:
            if tweet['text'].startswith('@'):
                continue
            if tweet['text'].startswith('I posted'):
                continue
            if utilities.is_retweet(tweet['text']):
                continue
            if tweet['created_at'] <= seven_days_ago:
                continue
            instance = session.query(models.tweet).get(tweet['id'])
            if not instance:
                instance = models.tweet(**{
                    'id': tweet['id'],
                })
            instance.created_at = tweet['created_at']
            instance.favorites = tweet['favorites']
            instance.media = tweet['media']
            instance.retweets = tweet['retweets']
            instance.text = tweet['text']
            instance.user_name = tweet['user_name']
            instance.user_profile_image_url = tweet['user_profile_image_url']
            instance.user_screen_name = tweet['user_screen_name']
            session.add(instance)
            session.commit()
            session.refresh(handle)
        log.write(10, len(tweets), 2)
Ejemplo n.º 3
0
def process_1():
    with closing(database.session()) as session:
        for handle in session.query(models.handle).order_by('id ASC').all():
            twitter_1.delay(handle.id)
Ejemplo n.º 4
0
def before_request():
    g.mysql = database.session()
    g.year = datetime.now().strftime('%Y')
    session.permanent = True