コード例 #1
0
ファイル: stream_main.py プロジェクト: kekfic/mytunefy
    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()
コード例 #2
0
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
コード例 #3
0
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
コード例 #4
0
ファイル: downld_main.py プロジェクト: kekfic/mytunefy
 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
コード例 #5
0
ファイル: downld_main.py プロジェクト: kekfic/mytunefy
    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()
コード例 #6
0
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",
    }
コード例 #7
0
ファイル: handle.py プロジェクト: Negahead/spotify-downloader
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",
コード例 #8
0
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' }
               }

コード例 #9
0
 def set_local_folder(self, folder=''):
     if folder:
         self.music_folder = folder
     else:
         self.music_folder = internals.get_music_dir()