def __init__(self, username): self.username = username self.db = connect_mongo() self.collection = self.db.codeforces.submissions self.stats = self.db.codeforces.by_day self.last_record = self.refresh_last_record() self.url = "http://codeforces.com/api/user.status?handle={}&from=1&count={}" self.refresh_submissions()
def get_github_stats_for_day(github_token, dt, name): db = connect_mongo() stats = db.github.by_day.find_one({'user': name, 'dt': dt.toordinal()}) today = datetime.date.today().toordinal() if stats: # and dt != today: print("Cached") return print("Getting GitHub stats for {}, {}".format(dt, name)) stats = GithubProvider(github_token).run(dt) db.github.by_day.update({'user': name, 'dt': dt.toordinal()}, {'$set': {'stats': stats}}, upsert=True)
def get_stats_for_day(token, dt): db = connect_mongo() coll = db.goodreads stats = coll.by_day.find_one({'dt': dt}) today = datetime.date.today().toordinal() if stats and dt != today: return stats = GoodreadsProvider(token).run(dt) coll.by_day.update({'dt': dt.toordinal()}, { '$set': { 'stats': stats } }, upsert=True)