From ef3c9fbf576511038872fad9e6a4734760f04212 Mon Sep 17 00:00:00 2001 From: RemixDev Date: Thu, 23 Dec 2021 18:45:55 +0100 Subject: [PATCH] fixed deezer helper --- deemix/utils/deezer.py | 52 ++++++++++++++++++++++++++---------------- 1 file changed, 32 insertions(+), 20 deletions(-) diff --git a/deemix/utils/deezer.py b/deemix/utils/deezer.py index 4eb79cd..4232f6c 100644 --- a/deemix/utils/deezer.py +++ b/deemix/utils/deezer.py @@ -5,28 +5,40 @@ CLIENT_ID = "172365" CLIENT_SECRET = "fb0bec7ccc063dab0417eb7b0d847f34" def getAccessToken(email, password): + accessToken = None password = _md5(password) request_hash = _md5(''.join([CLIENT_ID, email, password, CLIENT_SECRET])) - response = requests.get( - 'https://api.deezer.com/auth/token', - params={ - 'app_id': CLIENT_ID, - 'login': email, - 'password': password, - 'hash': request_hash - }, - headers={"User-Agent": USER_AGENT_HEADER} - ).json() - return response.get('access_token') + try: + response = requests.get( + 'https://api.deezer.com/auth/token', + params={ + 'app_id': CLIENT_ID, + 'login': email, + 'password': password, + 'hash': request_hash + }, + headers={"User-Agent": USER_AGENT_HEADER} + ).json() + accessToken = response.get('access_token') + if accessToken == "undefined": accessToken = None + except Exception: + pass + return accessToken def getArlFromAccessToken(accessToken): + if not accessToken: return None + arl = None session = requests.Session() - session.get( - "https://api.deezer.com/platform/generic/track/3135556", - headers={"Authorization": f"Bearer {accessToken}", "User-Agent": USER_AGENT_HEADER} - ) - response = session.get( - 'https://www.deezer.com/ajax/gw-light.php?method=user.getArl&input=3&api_version=1.0&api_token=null', - headers={"User-Agent": USER_AGENT_HEADER} - ).json() - return response.get('results') + try: + session.get( + "https://api.deezer.com/platform/generic/track/3135556", + headers={"Authorization": f"Bearer {accessToken}", "User-Agent": USER_AGENT_HEADER} + ) + response = session.get( + 'https://www.deezer.com/ajax/gw-light.php?method=user.getArl&input=3&api_version=1.0&api_token=null', + headers={"User-Agent": USER_AGENT_HEADER} + ).json() + arl = response.get('results') + except Exception: + pass + return arl