def get_mmr(self, tag):
if "#" not in tag:
raise ValueError("battle tag must include '#'")
try:
async with aiohttp.get("https://www.hotslogs.com/API/Players/1/" + tag.replace("#", "_")) as r:
response = await r.json()
except aiohttp.ClientError:
raise APIError()
if not response:
return MMRInfo(MMRInfo.NO_INFO)
rankings = response.get("LeaderboardRankings")
if not rankings:
return MMRInfo(MMRInfo.NO_INFO)
qm_mmr = 0
hl_mmr = 0
for ranking in rankings:
if ranking["GameMode"] == "QuickMatch":
qm_mmr = ranking["CurrentMMR"]
elif ranking["GameMode"] == "HeroLeague":
hl_mmr = ranking["CurrentMMR"]
return MMRInfo(MMRInfo.PRESENT, qm_mmr, hl_mmr)
评论列表
文章目录