paper-dynasty-card-creation/scripts/legacy/manual_pull_fielding.py
Cal Corum 0a17745389 Run black and ruff across entire codebase
Standardize formatting with black and apply ruff auto-fixes.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 14:24:33 -05:00

62 lines
1.7 KiB
Python

import asyncio
import sys
import batters.creation
import pitchers.creation
from creation_helpers import get_args, pd_players_df
from db_calls import db_get
from defenders import calcs_defense as cde
async def main(args):
arg_data = get_args(args)
cardset_name = arg_data["cardset_name"]
print(f"Searching for cardset: {cardset_name}")
c_query = await db_get("cardsets", params=[("name", cardset_name)])
if c_query["count"] == 0:
print(f"I do not see a cardset named {cardset_name}")
return
cardset = c_query["cardsets"][0]
del c_query
if "season" in arg_data:
season = arg_data["season"]
else:
season = int(cardset["name"][:4])
post_batters = (
True
if "post_batters" not in arg_data or arg_data["post_batters"].lower() == "true"
else False
)
post_pitchers = (
True
if "post_pitchers" not in arg_data
or arg_data["post_pitchers"].lower() == "true"
else False
)
post_players = (
True
if "post_players" not in arg_data or arg_data["post_players"].lower() == "true"
else False
)
season_pct = 1.0 if "season_pct" not in arg_data else float(arg_data["season_pct"])
all_players = await pd_players_df(cardset["id"])
if post_batters:
await batters.creation.run_batter_fielding(
season, all_players, season_pct, post_batters
)
if post_pitchers:
df_p = cde.get_bbref_fielding_df("p", season)
await pitchers.creation.create_position(
season_pct, all_players, post_pitchers, df_p
)
if __name__ == "__main__":
asyncio.run(main(sys.argv[1:]))