import statsapi import datetime import pytz def process_game(game,mytz): results = "" if game["home_name"] == "Pittsburgh Pirates": # home game score_pirates = game["home_score"] score_other = game["away_score"] results += "vs "+game["away_name"] else: score_pirates = game["away_score"] score_other = game["home_score"] results += "at "+game["home_name"] if game["status"] != "Scheduled": if game["status"] == "Final": if score_pirates > score_other: results += ", Pirates won" else: results += ", Pirates lost" else: # game in progress if score_pirates > score_other: results += ", Pirates winning" elif score_pirates < score_other: results += ", Pirates losing" else: results += ", tied" results += " "+str(game["away_score"])+" - "+str(game["home_score"]) if game["status"] != "Final": gamedate = datetime.datetime.strptime(game["game_datetime"],"%Y-%m-%dT%H:%M:%SZ") gamedateutc = gamedate.replace(tzinfo=datetime.timezone.utc) results+= " "+gamedateutc.astimezone(tz=mytz).strftime("%I:%M %p") if game["national_broadcasts"]: nb = "" for b in game["national_broadcasts"]: if nb: nb += ", " nb += b results += " (on "+nb+")" results += " ("+game["status"]+")" return results def get_pirates(): useastern_timezone = pytz.timezone("US/Eastern") results = "" todaystr = datetime.datetime.now(tz=useastern_timezone).strftime("%Y-%m-%d") tomorrow = datetime.datetime.now(tz=useastern_timezone)+datetime.timedelta(days=1) tomorrowstr = tomorrow.strftime("%Y-%m-%d") yesterday = datetime.datetime.now(tz=useastern_timezone)+datetime.timedelta(days=-1) yesterdaystr = yesterday.strftime("%Y-%m-%d") piratesid = statsapi.lookup_team('pittsburgh')[0]['id'] yesterdaysgame = statsapi.schedule(team=piratesid,date=yesterdaystr) if yesterdaysgame: results+= "Yesterday: "+process_game(yesterdaysgame[0],useastern_timezone)+"\n" todaysgame = statsapi.schedule(team=piratesid,date=todaystr) if todaysgame: results+= "Today: "+process_game(todaysgame[0],useastern_timezone)+"\n" #results += todaysgame[0]["summary"]+" "+todaysgame[0]["game_datetime"]+"\n" #print("todaysgame",todaysgame) tomorrowsgame = statsapi.schedule(team=piratesid,date=tomorrowstr) if tomorrowsgame: results+= "Tomorrow: "+process_game(tomorrowsgame[0],useastern_timezone)+"\n" #dtt = tomorrowsgame[0]["game_datetime"][11:16] #results+= tomorrowsgame[0]["summary"]+" "+tomorrowsgame[0]["game_datetime"]+"\n" return results if __name__ == '__main__': print(get_pirates()) #print(statsapi.schedule(team=piratesid)) # 6/5 Local time 7:15 pm '2026-06-05T23:15:00Z' # 6/6 Local time 4:10 pm '2026-06-06T20:10:00Z' # 6/7 Local time 1:35 pm '2026-06-07T17:35:00Z' # datetime.datetime.strptime(game[0]["game_datetime"],"%Y-%m-%dT%H:%M:%SZ") # gamedateutc = gamedate.replace(tzinfo=datetime.timezone.utc) # gamedateutc.astimezone()