def __init__(self, parent=None): self.stream_window = QWidget() super(MainStream, self).__init__(parent) Ui_StreamListAdd().__init__() self.setupUi(self.stream_window) # self.stream_window.setWindowModality(Qt.WindowModality) self.quecreat = Queue() self.all_urls = [] self.all_categories = [] self.name_categories = [] self.count = 0 'hiding progress bar' self.progressBar.hide() 'Two signal for folder and download button launch' self.pushButtonFolder.clicked.connect(self.folder_opener) 'setting the args global variable with default values' const.args = rs.get_arguments() const.args.folder = internals.get_music_dir() os.makedirs('cache', exist_ok=True) const.args.folder = os.getcwd() + '/cache/' 'Plain text, setting folder text and configuring signal' self.plainTextEditUrl.textChanged.connect(self.text_from_plain_text) 'listWidget beahaviour' self.listWidgetUrls.hide() self.listWidgetUrls.itemDoubleClicked.connect(self.remove_item) self.pushButtonStream.clicked.connect(self.stream_button_handler) self.database_streaming = db_song_stream_conn()
def test_default_music_directory(): if sys.platform.startswith("linux"): output = subprocess.check_output(["xdg-user-dir", "MUSIC"]) expect_directory = output.decode("utf-8").rstrip() else: home = os.path.expanduser("~") expect_directory = os.path.join(home, "Music") directory = internals.get_music_dir() assert directory == expect_directory
def test_default_music_directory(): if sys.platform.startswith('linux'): output = subprocess.check_output(['xdg-user-dir', 'MUSIC']) expect_directory = output.decode('utf-8').rstrip() else: home = os.path.expanduser('~') expect_directory = os.path.join(home, 'Music') directory = internals.get_music_dir() assert directory == expect_directory
def folder_opener(self): """Selecting the download folder""" self.mydir = QFileDialog.getExistingDirectory(self.mainwindow, 'Select a directory', const.args.folder, QFileDialog.ShowDirsOnly) if not self.mydir: self.mydir = internals.get_music_dir() self.plainTextDirectory.setPlainText(self.mydir) self.mydir.replace("/", "\\") const.args.folder = self.mydir
def __init__(self): self.mainwindow = MyWindow() Ui_MainWindow.__init__(self) self.setupUi(self.mainwindow) QObject.__init__(self) # Todo; check all unused variables and functions self.quecreat = Queue() self.all_urls = [] self.all_categories = [] self.name_categories = [] self.count = 0 'hiding progress bar' self.progressBar.hide() 'Two signal for folder and download button launch' self.pushButtonFolder.clicked.connect(self.folder_opener) self.StartPushButton.clicked.connect(self.download_button_handler) 'setting the args global variable with default values' const.args = rs.get_arguments() const.args.folder = internals.get_music_dir() 'Plain text, setting folder text and configuring signal' self.plainTextDirectory.setPlainText(const.args.folder) self.plainTextEditUrl.textChanged.connect(self.text_from_plain_text) 'listWidget beahaviour' self.listWidgetUrls.hide() self.listWidgetUrls.itemDoubleClicked.connect(self.remove_item) self.menu_connection() self.pushButtonYoutube.clicked.connect(self.youtube_button) 'Setting thread tha take care of the download, this allow a responsive main window' # self.mythread = MyClassThread(target=self.startDownload) self.mythread = threading.Thread(target=self.threaded_downloader, daemon=True) self.mythread.start() self.threadSignal.connect(self.thread_down_status_completed) 'database connection configuration, in progress' self.database = db_song_conn() if self.database: self.db_thread = threading.Thread(target=db_music_inserter, daemon=True, args=(self.database, )) self.db_thread.start()
import yaml import argparse import mimetypes import os import spotdl from spotdl import internals _LOG_LEVELS_STR = ["INFO", "WARNING", "ERROR", "DEBUG"] default_conf = { "spotify-downloader": { "manual": False, "no-metadata": False, "avconv": False, "folder": internals.get_music_dir(), "overwrite": "prompt", "input-ext": ".m4a", "output-ext": ".mp3", "trim-silence": False, "download-only-metadata": False, "dry-run": False, "music-videos-only": False, "no-spaces": False, "file-format": "{artist} - {track_name}", "search-format": "{artist} - {track_name} lyrics", "youtube-api-key": None, "skip": None, "write-successful": None, "log-level": "INFO", }
import mimetypes import os import spotdl from spotdl import internals _LOG_LEVELS_STR = ["INFO", "WARNING", "ERROR", "DEBUG"] default_conf = { "spotify-downloader": { "manual": False, "no-metadata": False, "no-fallback-metadata": False, "avconv": False, "folder": internals.get_music_dir(), # default path C:\Users\zhouwei_vendor\Music "overwrite": "prompt", "input-ext": ".m4a", "output-ext": ".mp3", "write-to": None, "trim-silence": False, "download-only-metadata": False, "dry-run": False, "music-videos-only": False, "no-spaces": False, "file-format": "{artist} - {track_name}", "search-format": "{artist} - {track_name} lyrics", "youtube-api-key": None, "skip": None, "write-successful": None, "log-level": "INFO",
import logging import yaml import argparse import os import sys _LOG_LEVELS_STR = ['INFO', 'WARNING', 'ERROR', 'DEBUG'] default_conf = { 'spotify-downloader': { 'manual' : False, 'no-metadata' : False, 'avconv' : False, 'folder' : internals.get_music_dir(), 'overwrite' : 'prompt', 'input-ext' : '.m4a', 'output-ext' : '.mp3', 'trim-silence' : False, 'download-only-metadata' : False, 'dry-run' : False, 'music-videos-only' : False, 'no-spaces' : False, 'file-format' : '{artist} - {track_name}', 'search-format' : '{artist} - {track_name} lyrics', 'youtube-api-key' : None, 'log-level' : 'INFO' } }
def set_local_folder(self, folder=''): if folder: self.music_folder = folder else: self.music_folder = internals.get_music_dir()