import aiohttp from config import FFSCOUTER_KEY async def fetch_batch_stats(ids: list[int]): """ Fetches predicted stats for a list of Torn IDs in a single FFScouter request. Returns dict keyed by player_id. """ if not ids: return {} ids_str = ",".join(map(str, ids)) url = f"https://ffscouter.com/api/v1/get-stats?key={FFSCOUTER_KEY}&targets={ids_str}" async with aiohttp.ClientSession() as session: async with session.get(url) as resp: if resp.status != 200: print("FFScouter batch error:", resp.status) return {} data = await resp.json() return {str(d["player_id"]): d for d in data}