From 8f89c91cb84947484bf94619651246d481d494ea Mon Sep 17 00:00:00 2001 From: League of Poro <95635582+LeagueOfPoro@users.noreply.github.com> Date: Mon, 30 Jan 2023 14:21:18 +0100 Subject: [PATCH] Sequential login for 2FA accs --- Browser.py | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/Browser.py b/Browser.py index 2449145..fdc4be0 100644 --- a/Browser.py +++ b/Browser.py @@ -48,17 +48,17 @@ def login(self, username: str, password: str, refreshLock) -> bool: self.client.get( "https://login.leagueoflegends.com/?redirect_uri=https://lolesports.com/&lang=en") self.__loadCookies() - # Submit credentials - data = {"type": "auth", "username": username, - "password": password, "remember": True, "language": "en_US"} - res = self.client.put( - "https://auth.riotgames.com/api/v1/authorization", json=data) - resJson = res.json() try: + refreshLock.acquire() + # Submit credentials + data = {"type": "auth", "username": username, + "password": password, "remember": True, "language": "en_US"} + res = self.client.put( + "https://auth.riotgames.com/api/v1/authorization", json=data) + resJson = res.json() if "multifactor" in resJson.get("type", ""): - refreshLock.acquire() twoFactorCode = input(f"Enter 2FA code for {self.account}:\n") - refreshLock.release() + print("Code sent") data = {"type": "multifactor", "code": twoFactorCode, "rememberDevice": True} res = self.client.put( "https://auth.riotgames.com/api/v1/authorization", json=data) @@ -67,6 +67,8 @@ def login(self, username: str, password: str, refreshLock) -> bool: res = self.client.get(resJson["response"]["parameters"]["uri"]) except KeyError: return False + finally: + refreshLock.release() # Login to lolesports.com, riotgames.com, and playvalorant.com token, state = self.__getLoginTokens(res.text) if token and state: