From afb76e530c0f506b4c62c2e53f06f559d67cadbd Mon Sep 17 00:00:00 2001 From: nathom Date: Sun, 28 Mar 2021 14:56:23 -0700 Subject: [PATCH] misc changes --- .gitignore | 1 + streamrip/clients.py | 11 ++++++----- streamrip/config.py | 10 +++++++--- streamrip/constants.py | 2 +- streamrip/utils.py | 4 ++-- 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/.gitignore b/.gitignore index 03213b0..3fbdd36 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ dist build test.py /urls.txt +*.flac diff --git a/streamrip/clients.py b/streamrip/clients.py index 36d5888..2f9b16a 100644 --- a/streamrip/clients.py +++ b/streamrip/clients.py @@ -1,5 +1,6 @@ -import datetime import base64 +import json +import datetime import hashlib import logging import os @@ -551,7 +552,7 @@ class TidalMQAClient: } resp = self._api_post(f"{TIDAL_AUTH_URL}/device_authorization", data) - if 'status' in resp and resp['status'] != 200: + if "status" in resp and resp["status"] != 200: raise Exception(f"Device authorization failed {resp}") logger.debug(pformat(resp)) @@ -650,8 +651,8 @@ class TidalMQAClient: "assetpresentation": "FULL", } resp = self._api_request(f"tracks/{track_id}/playbackinfopostpaywall", params) - manifest = json.loads(base64.b64decode(resp['manifest']).decode("utf-8")) - codec = manifest['codecs'] + manifest = json.loads(base64.b64decode(resp["manifest"]).decode("utf-8")) + codec = manifest["codecs"] file_url = manifest["urls"][0] enc_key = manifest.get("keyId", "") - return resp + return manifest diff --git a/streamrip/config.py b/streamrip/config.py index 008ed02..80c4f17 100644 --- a/streamrip/config.py +++ b/streamrip/config.py @@ -32,14 +32,18 @@ class Config: defaults = { "qobuz": { - "enabled": True, "email": None, "password": None, "app_id": "", # Avoid NoneType error "secrets": [], }, - "tidal": {"enabled": True, "email": None, "password": None}, - "deezer": {"enabled": True}, + "tidal": { + "user_id": None, + "country_code": None, + "access_token": None, + "refresh_token": None, + "expires_after": 0, + }, "database": {"enabled": True, "path": None}, "conversion": { "enabled": False, diff --git a/streamrip/constants.py b/streamrip/constants.py index 7270890..db4960b 100644 --- a/streamrip/constants.py +++ b/streamrip/constants.py @@ -8,7 +8,7 @@ APPNAME = "streamrip" CACHE_DIR = click.get_app_dir(APPNAME) CONFIG_DIR = click.get_app_dir(APPNAME) -CONFIG_PATH = os.path.join(CONFIG_DIR, "config.yaml") +CONFIG_PATH = os.path.join(CONFIG_DIR, "configmqa.yaml") LOG_DIR = click.get_app_dir(APPNAME) DB_PATH = os.path.join(LOG_DIR, "downloads.db") diff --git a/streamrip/utils.py b/streamrip/utils.py index f8d47e6..450609b 100644 --- a/streamrip/utils.py +++ b/streamrip/utils.py @@ -5,10 +5,10 @@ from string import Formatter from typing import Optional import requests -from pathvalidate import sanitize_filename -from tqdm import tqdm from Crypto.Cipher import AES from Crypto.Util import Counter +from pathvalidate import sanitize_filename +from tqdm import tqdm from .constants import LOG_DIR, TIDAL_COVER_URL from .exceptions import NonStreamable