fix: calling the proper artist page
This commit is contained in:
parent
1794c0535e
commit
a039643ba2
@ -43,8 +43,9 @@ if __name__ == "__main__":
|
|||||||
|
|
||||||
bandcamp_test = [
|
bandcamp_test = [
|
||||||
"s: #a Ghost Bath",
|
"s: #a Ghost Bath",
|
||||||
|
"3",
|
||||||
"d: 0"
|
"d: 0"
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
music_kraken.cli.download(genre="test", command_list=cross_download, process_metadata_anyway=True)
|
music_kraken.cli.download(genre="test", command_list=bandcamp_test, process_metadata_anyway=True)
|
@ -24,6 +24,7 @@ from ..utils.enums.album import AlbumType
|
|||||||
from ..audio import write_metadata_to_target, correct_codec
|
from ..audio import write_metadata_to_target, correct_codec
|
||||||
from ..utils.config import main_settings
|
from ..utils.config import main_settings
|
||||||
from ..utils.support_classes import Query, DownloadResult
|
from ..utils.support_classes import Query, DownloadResult
|
||||||
|
from ..utils.string_processing import fit_to_file_system
|
||||||
|
|
||||||
|
|
||||||
INDEPENDENT_DB_OBJECTS = Union[Label, Album, Artist, Song]
|
INDEPENDENT_DB_OBJECTS = Union[Label, Album, Artist, Song]
|
||||||
@ -53,17 +54,12 @@ class NamingDict(dict):
|
|||||||
return type(self)(super().copy(), self.object_mappings.copy())
|
return type(self)(super().copy(), self.object_mappings.copy())
|
||||||
|
|
||||||
def __getitem__(self, key: str) -> str:
|
def __getitem__(self, key: str) -> str:
|
||||||
return super().__getitem__(key)
|
return fit_to_file_system(super().__getitem__(key))
|
||||||
|
|
||||||
def default_value_for_name(self, name: str) -> str:
|
def default_value_for_name(self, name: str) -> str:
|
||||||
return f'Various {name.replace("_", " ").title()}'
|
return f'Various {name.replace("_", " ").title()}'
|
||||||
|
|
||||||
def __missing__(self, key: str) -> str:
|
def __missing__(self, key: str) -> str:
|
||||||
"""
|
|
||||||
TODO
|
|
||||||
add proper logging
|
|
||||||
"""
|
|
||||||
|
|
||||||
if "." not in key:
|
if "." not in key:
|
||||||
if key not in self.CUSTOM_KEYS:
|
if key not in self.CUSTOM_KEYS:
|
||||||
return self.default_value_for_name(key)
|
return self.default_value_for_name(key)
|
||||||
@ -331,10 +327,6 @@ class Page:
|
|||||||
return Label()
|
return Label()
|
||||||
|
|
||||||
def download(self, music_object: DatabaseObject, genre: str, download_all: bool = False, process_metadata_anyway: bool = False) -> DownloadResult:
|
def download(self, music_object: DatabaseObject, genre: str, download_all: bool = False, process_metadata_anyway: bool = False) -> DownloadResult:
|
||||||
# print("downloading")
|
|
||||||
|
|
||||||
# self.fetch_details(music_object, stop_at_level=1)
|
|
||||||
|
|
||||||
naming_dict: NamingDict = NamingDict({"genre": genre})
|
naming_dict: NamingDict = NamingDict({"genre": genre})
|
||||||
|
|
||||||
def fill_naming_objects(naming_music_object: DatabaseObject):
|
def fill_naming_objects(naming_music_object: DatabaseObject):
|
||||||
|
@ -223,7 +223,7 @@ class Bandcamp(Page):
|
|||||||
def fetch_artist(self, source: Source, stop_at_level: int = 1) -> Artist:
|
def fetch_artist(self, source: Source, stop_at_level: int = 1) -> Artist:
|
||||||
artist = Artist()
|
artist = Artist()
|
||||||
|
|
||||||
r = self.connection.get(source.url)
|
r = self.connection.get(_parse_artist_url(source.url))
|
||||||
if r is None:
|
if r is None:
|
||||||
return artist
|
return artist
|
||||||
|
|
||||||
|
@ -92,7 +92,7 @@ def _album_from_json(album_html=None, release_type=None, artist_html=None) -> Al
|
|||||||
# <a href="https://www.metal-archives.com/albums/Ghost_Bath/Self_Loather/970834">Self Loather</a>'
|
# <a href="https://www.metal-archives.com/albums/Ghost_Bath/Self_Loather/970834">Self Loather</a>'
|
||||||
soup = BeautifulSoup(album_html, 'html.parser')
|
soup = BeautifulSoup(album_html, 'html.parser')
|
||||||
anchor = soup.find('a')
|
anchor = soup.find('a')
|
||||||
album_name = anchor.text
|
album_name = anchor.text.strip()
|
||||||
album_url = anchor.get('href')
|
album_url = anchor.get('href')
|
||||||
album_id = album_url.split("/")[-1]
|
album_id = album_url.split("/")[-1]
|
||||||
|
|
||||||
@ -305,8 +305,6 @@ class EncyclopaediaMetallum(Page):
|
|||||||
|
|
||||||
source_list.append(Source.match_url(url, referer_page=self.SOURCE_TYPE))
|
source_list.append(Source.match_url(url, referer_page=self.SOURCE_TYPE))
|
||||||
|
|
||||||
print(source_list)
|
|
||||||
|
|
||||||
return source_list
|
return source_list
|
||||||
|
|
||||||
def _parse_artist_attributes(self, artist_soup: BeautifulSoup) -> Artist:
|
def _parse_artist_attributes(self, artist_soup: BeautifulSoup) -> Artist:
|
||||||
|
@ -2,7 +2,7 @@ import random
|
|||||||
|
|
||||||
from .config import main_settings
|
from .config import main_settings
|
||||||
|
|
||||||
DEBUG = True
|
DEBUG = False
|
||||||
DEBUG_LOGGIN = DEBUG and False
|
DEBUG_LOGGIN = DEBUG and False
|
||||||
DEBUG_YOUTUBE_INITIALIZING = DEBUG and False
|
DEBUG_YOUTUBE_INITIALIZING = DEBUG and False
|
||||||
DEBUG_PAGES = DEBUG and False
|
DEBUG_PAGES = DEBUG and False
|
||||||
|
Loading…
Reference in New Issue
Block a user