#! /usr/bin/env python import sys sys.path.insert(0, '.') import logging logging.basicConfig( stream=sys.stdout, level=logging.INFO, format="%(asctime)s %(levelname)s %(message)s", datefmt='%H:%M:%S' ) from tracker.logger import get_logger logger = get_logger(__name__) from datetime import datetime from tracker import db db.setup_session() from tracker import tiktok if __name__ == '__main__': logger.info("Starting tiktok fix") missing_usernames = [r[0] for r in db.Session.execute(''' select distinct unique_id from users_tt_influencers where unique_id not in (select unique_id from tiktok_users) ''').fetchall()] logger.info(f"Found {len(missing_usernames)} missing scouts") for username in missing_usernames: logger.info(f"Fixing {username}") try: new_user: db.TikTokUser = tiktok.upsert_user_by_id(username) except tiktok.UnkownTikTokUserError: logger.warn(f"Failed to find user {username}") else: new_user.is_influencer = True new_user.last_visited = datetime(2020,1,1) db.Session.commit() logger.info("Sleeping for 10 seconds") import time; time.sleep(10)