fixed dependency
This commit is contained in:
parent
f45afcb2ce
commit
993545eb9d
@ -19,12 +19,16 @@ from .database.database import Database
|
|||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
|
|
||||||
|
logging.getLogger("musicbrainzngs").setLevel(logging.WARNING)
|
||||||
|
musicbrainzngs.set_useragent("metadata receiver", "0.1", "https://github.com/HeIIow2/music-downloader")
|
||||||
|
|
||||||
|
"""
|
||||||
database = Database(os.path.join(temp_dir, DATABASE_FILE),
|
database = Database(os.path.join(temp_dir, DATABASE_FILE),
|
||||||
os.path.join(temp_dir, DATABASE_STRUCTURE_FILE),
|
os.path.join(temp_dir, DATABASE_STRUCTURE_FILE),
|
||||||
DATABASE_STRUCTURE_FALLBACK,
|
DATABASE_STRUCTURE_FALLBACK,
|
||||||
DATABASE_LOGGER,
|
DATABASE_LOGGER,
|
||||||
reset_anyways=False)
|
reset_anyways=False)
|
||||||
|
"""
|
||||||
|
|
||||||
def get_existing_genre():
|
def get_existing_genre():
|
||||||
valid_directories = []
|
valid_directories = []
|
||||||
|
@ -11,6 +11,7 @@ from .sources import (
|
|||||||
local_files
|
local_files
|
||||||
)
|
)
|
||||||
from ..database import song as song_objects
|
from ..database import song as song_objects
|
||||||
|
from ..database.temp_database import temp_database
|
||||||
|
|
||||||
logger = DOWNLOAD_LOGGER
|
logger = DOWNLOAD_LOGGER
|
||||||
|
|
||||||
@ -33,15 +34,15 @@ print(EasyID3.valid_keys.keys())
|
|||||||
|
|
||||||
class Download:
|
class Download:
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
for song in database.get_tracks_to_download():
|
for song in temp_database.get_tracks_to_download():
|
||||||
|
|
||||||
if self.path_stuff(song.target):
|
if self.path_stuff(song.target):
|
||||||
self.write_metadata(song, song['file'])
|
self.write_metadata(song, song.target.file)
|
||||||
continue
|
continue
|
||||||
|
|
||||||
# download_success = Download.download_from_src(song['src'], song)
|
# download_success = Download.download_from_src(song['src'], song)
|
||||||
for source in song.sources:
|
for source in song.sources:
|
||||||
download_success = Download.download_from_src(source.src, source.url, song)
|
download_success = Download.download_from_src(song, source)
|
||||||
if download_success != -1:
|
if download_success != -1:
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
@ -59,12 +60,12 @@ class Download:
|
|||||||
self.write_metadata(song, song['file'])
|
self.write_metadata(song, song['file'])
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def download_from_src(src, url, song):
|
def download_from_src(song, src):
|
||||||
if src not in sources:
|
if src.src not in sources:
|
||||||
raise ValueError(f"source {src} seems to not exist")
|
raise ValueError(f"source {src.src} seems to not exist")
|
||||||
source_subclass = sources[src]
|
source_subclass = sources[src.src]
|
||||||
|
|
||||||
return source_subclass.fetch_audio(url, song)
|
return source_subclass.fetch_audio(song, src)
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def write_metadata(song, file_path):
|
def write_metadata(song, file_path):
|
||||||
|
@ -6,7 +6,7 @@ from .sources import (
|
|||||||
local_files
|
local_files
|
||||||
)
|
)
|
||||||
|
|
||||||
from .. import database
|
from ..database.temp_database import temp_database
|
||||||
|
|
||||||
logger = URL_DOWNLOAD_LOGGER
|
logger = URL_DOWNLOAD_LOGGER
|
||||||
|
|
||||||
@ -21,7 +21,7 @@ class Download:
|
|||||||
def __init__(self) -> None:
|
def __init__(self) -> None:
|
||||||
self.urls = []
|
self.urls = []
|
||||||
|
|
||||||
for row in database.get_tracks_without_src():
|
for row in temp_database.get_tracks_without_src():
|
||||||
row['artists'] = [artist['name'] for artist in row['artists']]
|
row['artists'] = [artist['name'] for artist in row['artists']]
|
||||||
|
|
||||||
id_ = row['id']
|
id_ = row['id']
|
||||||
|
15
src/music_kraken/database/temp_database.py
Normal file
15
src/music_kraken/database/temp_database.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
from .database import Database
|
||||||
|
|
||||||
|
from ..utils.shared import (
|
||||||
|
TEMP_DATABASE_PATH,
|
||||||
|
DATABASE_STRUCTURE_FILE,
|
||||||
|
DATABASE_STRUCTURE_FALLBACK,
|
||||||
|
DATABASE_LOGGER
|
||||||
|
)
|
||||||
|
|
||||||
|
class TempDatabase(Database):
|
||||||
|
def __init__(self) -> None:
|
||||||
|
super().__init__(TEMP_DATABASE_PATH, DATABASE_STRUCTURE_FILE, DATABASE_STRUCTURE_FALLBACK, DATABASE_LOGGER, False)
|
||||||
|
|
||||||
|
|
||||||
|
temp_database = TempDatabase()
|
@ -2,6 +2,7 @@ import os.path
|
|||||||
import logging
|
import logging
|
||||||
|
|
||||||
from ..utils.shared import *
|
from ..utils.shared import *
|
||||||
|
from ..database.temp_database import temp_database
|
||||||
|
|
||||||
logger = PATH_LOGGER
|
logger = PATH_LOGGER
|
||||||
|
|
||||||
@ -21,7 +22,7 @@ class UrlPath:
|
|||||||
|
|
||||||
self.genre = genre
|
self.genre = genre
|
||||||
|
|
||||||
for row in database.get_tracks_without_filepath():
|
for row in temp_database.get_tracks_without_filepath():
|
||||||
# print(row)
|
# print(row)
|
||||||
file, path = self.get_path_from_row(row)
|
file, path = self.get_path_from_row(row)
|
||||||
logger.info(f"setting target to {file}")
|
logger.info(f"setting target to {file}")
|
||||||
|
@ -6,13 +6,15 @@ import os
|
|||||||
|
|
||||||
TEMP_FOLDER = "music-downloader"
|
TEMP_FOLDER = "music-downloader"
|
||||||
LOG_FILE = "download_logs.log"
|
LOG_FILE = "download_logs.log"
|
||||||
DATABASE_FILE = "metadata.db"
|
TEMP_DATABASE_FILE = "metadata.db"
|
||||||
DATABASE_STRUCTURE_FILE = "database_structure.sql"
|
DATABASE_STRUCTURE_FILE = "database_structure.sql"
|
||||||
DATABASE_STRUCTURE_FALLBACK = "https://raw.githubusercontent.com/HeIIow2/music-downloader/master/assets/database_structure.sql"
|
DATABASE_STRUCTURE_FALLBACK = "https://raw.githubusercontent.com/HeIIow2/music-downloader/master/assets/database_structure.sql"
|
||||||
temp_dir = os.path.join(tempfile.gettempdir(), TEMP_FOLDER)
|
temp_dir = os.path.join(tempfile.gettempdir(), TEMP_FOLDER)
|
||||||
if not os.path.exists(temp_dir):
|
if not os.path.exists(temp_dir):
|
||||||
os.mkdir(temp_dir)
|
os.mkdir(temp_dir)
|
||||||
|
|
||||||
|
TEMP_DATABASE_PATH = os.path.join(temp_dir, TEMP_DATABASE_FILE)
|
||||||
|
|
||||||
# configure logger default
|
# configure logger default
|
||||||
logging.basicConfig(
|
logging.basicConfig(
|
||||||
level=logging.INFO,
|
level=logging.INFO,
|
||||||
@ -34,9 +36,6 @@ DOWNLOAD_LOGGER = logging.getLogger("download")
|
|||||||
LYRICS_LOGGER = logging.getLogger("lyrics")
|
LYRICS_LOGGER = logging.getLogger("lyrics")
|
||||||
GENIUS_LOGGER = logging.getLogger("genius")
|
GENIUS_LOGGER = logging.getLogger("genius")
|
||||||
|
|
||||||
logging.getLogger("musicbrainzngs").setLevel(logging.WARNING)
|
|
||||||
musicbrainzngs.set_useragent("metadata receiver", "0.1", "https://github.com/HeIIow2/music-downloader")
|
|
||||||
|
|
||||||
NOT_A_GENRE = ".", "..", "misc_scripts", "Music", "script", ".git", ".idea"
|
NOT_A_GENRE = ".", "..", "misc_scripts", "Music", "script", ".git", ".idea"
|
||||||
MUSIC_DIR = os.path.expanduser('~/Music')
|
MUSIC_DIR = os.path.expanduser('~/Music')
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user