diff options
author | randomidiot13 <52841549+randomidiot13@users.noreply.github.com> | 2021-02-28 21:36:20 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-28 21:36:20 +0000 |
commit | 93b967c9e9656f316b42aae9ce75029d4629b644 (patch) | |
tree | 8f5bc33701896951d5edf269b3b05eb6a20ca7df /cogs/src.py | |
parent | 0aa0904adfd5e2d92a10151f346a5bc12c7aa750 (diff) | |
download | steve-bot-93b967c9e9656f316b42aae9ce75029d4629b644.tar steve-bot-93b967c9e9656f316b42aae9ce75029d4629b644.tar.gz steve-bot-93b967c9e9656f316b42aae9ce75029d4629b644.tar.bz2 steve-bot-93b967c9e9656f316b42aae9ce75029d4629b644.tar.lz steve-bot-93b967c9e9656f316b42aae9ce75029d4629b644.tar.xz steve-bot-93b967c9e9656f316b42aae9ce75029d4629b644.tar.zst steve-bot-93b967c9e9656f316b42aae9ce75029d4629b644.zip |
Make !pending not max out at 200 runs per game
Diffstat (limited to '')
-rwxr-xr-x | cogs/src.py | 21 |
1 files changed, 16 insertions, 5 deletions
diff --git a/cogs/src.py b/cogs/src.py index b96d36a..d2d17c8 100755 --- a/cogs/src.py +++ b/cogs/src.py @@ -121,13 +121,24 @@ async def pendingRuns(self, ctx): head = {"Accept": "application/json", "User-Agent": "mcbeDiscordBot/1.0"} for game in game_ids: - runs_request = requests.get( + runs = [] + async with self.bot.session.get( f"https://www.speedrun.com/api/v1/runs?game={game}&status=new&max=200&embed=category,players,level&orderby=submitted", headers=head, - ) - runs = json.loads(runs_request.text) - - for run in runs["data"]: + ) as temp: + while True: + temp_json = await temp.json() + runs.extend(temp_json["data"]) + if "pagination" not in temp_json or temp_json["pagination"]["size"] < 200: + break + temp = await self.bot.session.get( + {item["rel"]: item["uri"] for item in temp_json["pagination"]["links"]}[ + "next" + ], + headers=head, + ) + + for run in runs: _id = run["id"] duration = timedelta(seconds=run["times"]["realtime_t"]) |