downloader de música baseado em qt escrito em python.
Se você tiver uma ideia para uma melhoria ou recurso, crie um problema ou entre no servidor discord para discutir!
Certifique-se de que ffmpeg, python3 e Git estejam instalados e disponíveis em seu $PATH
. Se você estiver no Windows, também precisará instalar as ferramentas de compilação do Microsoft C++ e reiniciar o computador antes de iniciar o processo de compilação.
Baixe ou clone o repositório git clone https://github.com/casualsnek/onthespot
Navegue até o diretório onthespot cd onthespot
Instale o pacote pip install -r requirements.txt
Navegue até o diretório de origem cd src
Inicie o aplicativo com python3 -m onthespot
Os requisitos são os mesmos de “Iniciar sem instalar” acima.
Baixe ou clone o repositório git clone https://github.com/casualsnek/onthespot
Navegue até o diretório onthespot cd onthespot
Construa o pacote python -m build
Instale o pacote pip install ./dist/*.whl
Inicie o aplicativo com onthespot_gui
onthespot
está disponível para arch linux e distribuições baseadas em arch linux no repositório de usuário arch (aur) como onthespot-git.
Você pode instalar onthespot
usando seu auxiliar aur favorito.
Por exemplo: usando yay
yay -Sy onthespot-git
Baixe o 'onthespot_linux' mais recente da seção de lançamento e execute com
chmod +x onthespot_linux ./onethespot_linux
Baixe o 'onthespot_win_ffm.exe' mais recente ou 'onthespot_win.exe' na seção Release e execute clicando duas vezes no arquivo baixado.
Os binários com nome de arquivo terminando com '_ffm' possuem ffmpeg empacotado e não devem exigir instalação manual.
Se você estiver usando binários que não agrupam ffmpeg e os downloads travarem em 99% com Converting
no texto de progresso, você está perdendo ffmpeg ! Instale-o seguindo as instruções abaixo
Abra o Windows Explorer e navegue até C:
Drive e crie uma pasta com o nome ffmpeg
lá
Baixe ffmpeg zip em https://www.gyan.dev/ffmpeg/builds/ffmpeg-release-full.7z e copie a pasta bin
de zip para C:ffmpeg
Abra o CMD como administrador e execute o comando: setx /m PATH "C:ffmpegbin;%PATH%"
Agora o aplicativo deve funcionar conforme o esperado.
Construir ou empacotar em qualquer sistema operacional requer Git, Python3 e Pip instalados. Certifique-se de tê-los instalados!
Abra o emulador de terminal e execute o seguinte comando para clonar o repositório e construir.
clone git https://github.com/casualsnek/onthespotcd onthespot
Se você deseja compilações com ffmpeg incorporado, baixe binários ffmpeg para o seu sistema operacional aqui. Crie um novo diretório chamado 'ffbin_nix' no diretório raiz do repositório. Copie três arquivos 'ffmpeg', 'ffprobe', 'ffplay' do arquivo baixado para o diretório 'ffbin_nix' recém-criado e execute;
bash./build_linux.sh
Após a conclusão do comando, você deverá ter um diretório 'dist' na raiz do repositório contendo o binário 'onthespot_linux' construído.
Abra cmd e execute o seguinte comando para clonar o repositório e construir.
clone git https://github.com/casualsnek/onthespotcd onthespot
Se você não tiver o git instalado, você também pode baixar o zip fonte do projeto no github, extraí-lo e abrir o cmd na raiz do repositório. Se você deseja compilações com ffmpeg incorporado, baixe binários ffmpeg para o seu sistema operacional aqui. Crie um novo diretório chamado 'ffbin_win' no diretório raiz do repositório. Copie três arquivos 'ffmpeg.exe', 'ffprobe.exe', 'ffplay.exe' do arquivo baixado para o diretório 'ffbin_win' recém-criado e execute;
build_winC1.bat build_winC2.bat
Após a conclusão do comando, você deverá ter um diretório 'dist' na raiz do repositório contendo o binário 'onthespot_win.exe' construído.
NOTA: Isso cria um aplicativo apenas para a arquitetura de processador específica em que você está. Não constrói um binário universal
Abra o emulador de terminal e execute o seguinte comando para clonar o repositório e construir.
clone git https://github.com/casualsnek/onthespotcd onthespot
Se você deseja compilações com ffmpeg incorporado, baixe binários ffmpeg para o seu sistema operacional aqui. Crie um novo diretório chamado 'ffbin_mac' no diretório raiz do repositório. Copie três arquivos 'ffmpeg', 'ffprobe', 'ffplay' do arquivo baixado para o diretório 'ffbin_mac' recém-criado e execute:
./build_mac.sh
Após a conclusão do comando, você deverá ter um diretório ‘dist’ na raiz do repositório contendo o binário ‘onthespot_mac.app’.
Você também pode construir no local como roda e instalá-lo como módulo python via pip em seu sistema. Ele fornece melhor integração com o sistema, como usar o estilo e temas Qt do seu sistema, bem como você pode usar o ícone e o arquivo .desktop fornecidos para melhor integração em sistemas Linux.
Certifique-se de ter as ferramentas de configuração instaladas!
Abra o emulador de terminal e execute o seguinte comando para clonar o repositório e construir.
clone git https://github.com/casualsnek/onthespotcd onthespot python -m construir
Isso criará um diretório dist contendo o arquivo .whl que agora pode ser instalado com pip, o aplicativo pode ser iniciado com o comando onthespot_gui
ou python3 -m onthespot
após a instalação!
NOTA: Se você estiver empacotando onthespot para distribuição, copie src/onthespot/resources/icon.svg
para /usr/share/icons/hicolor/scalable/apps/casual_onthespot.svg
ou $HOME/.local/share/icons/hicolor/scalable/apps/casual_onthespot.svg
e src/onthespot/resources/org.eu.casualsnek.onthespot.desktop
para /usr/share/applications/org.eu.casualsnek.onthespot.desktop
ou $HOME/.local/share/applications/org.eu.casualsnek.onthespot.desktop
. Isso permite que o aplicativo seja melhor integrado aos ambientes de desktop!
Se você tiver ideias para melhorias/recursos, crie um problema ou entre no servidor discord para discussão!
Ao iniciar o aplicativo pela primeira vez, você receberá um aviso de que nenhuma conta do Spotify foi adicionada. Ignore o aviso e adicione sua(s) conta(s) na parte inferior da guia de configuração. Ter várias contas permitirá que você baixe várias músicas ao mesmo tempo.
Na guia 'Pesquisar', você pode inserir sua consulta e clicar em search
para pesquisar músicas/artistas/álbuns/listas de reprodução. Você pode então baixar a mídia na lista resultante clicando no botão download
. Opcionalmente, você pode fazer download em massa clicando em qualquer um dos botões abaixo da tabela. Observe que tipos de mídia diferentes de 'Faixas' podem demorar um pouco mais para serem analisados e baixados. O aplicativo pode parecer congelado neste estado!
Digite o URL no campo de pesquisa e clique em download. Você também pode inserir o caminho do arquivo de texto contendo o URL e ele colocará todos os URLs nele! Observe que tipos de mídia diferentes de 'Faixas' podem demorar um pouco mais para serem analisados e baixados. O aplicativo pode parecer congelado neste estado!
O status e o progresso do download podem ser visualizados navegando até a guia ‘Progresso’.
Máximo de trabalhadores de download : é o número de threads a serem usados para downloads de mídia. Defina isso para o número de contas que você adicionou. A alteração desta configuração requer a reinicialização do aplicativo para entrar em vigor.
Analisando SN da conta : É o número mostrado no lado esquerdo do nome de usuário na tabela de contas. O número é a conta responsável por fornecer resultados de pesquisa e analisar URL(s) de download.
Local de download : a pasta raiz onde a mídia baixada é colocada.
Atraso no download : tempo em segundos para esperar antes do próximo download após um download bem-sucedido.
Máximo de tentativas : número de vezes para tentar novamente um download antes de prosseguir.
Resultados máximos da pesquisa : o número de itens a serem exibidos no resultado da pesquisa para cada tipo de mídia. Exemplo: definir como '1' mostra um resultado para artista, álbum, faixa e lista de reprodução, resultando em 4 resultados de pesquisa no total.
Download de mídia bruta : baixa arquivos (eles serão .ogg) para o disco sem converter para o formato de mídia definido, também desativa a gravação de metadados e a incorporação de miniaturas.
Forçar prêmio : Use isto se suas contas premium mostrarem GRATUITO na tabela de contas, isso se aplica a todas as contas adicionadas, portanto não é recomendado usar com uma combinação de contas gratuitas e premium. Não use se a conta não for premium.
Habilitar a reprodução do aplicativo de desktop para download : A ativação baixará automaticamente as músicas que você toca no aplicativo Spotify para desktop. (Suportado: Linux/Windows)
Mostrar/ocultar configuração avançada : ativa/desativa a guia Configuração avançada.
Salvar configuração : salva/aplica as configurações
Os nomes de faixa padrão são AlbumFormatter/TrackName
Formatador de nome de faixa : Esta opção permite definir o esquema de nomenclatura das faixas baixadas. Variáveis podem ser usadas colocando-as entre {}
. Algumas variáveis estão disponíveis para uso no esquema de nomenclatura:
artista: Nome do artista da faixa
álbum: Nome do álbum em que a faixa está *
nome: Nome da faixa
rel_year: Ano de lançamento da faixa
disc_number : Número do disco onde está a faixa *
track_number: Número de série da faixa do álbum *
playlist_name : Nome da playlist se a faixa estiver sendo baixada como parte da playlist *
playlist_owner : Nome da playlist se a faixa estiver sendo baixada como parte da playlist *
playlist_desc : Descrição da playlist se a faixa estiver sendo baixada como parte da playlist *
gênero: Gênero da música *
label: Nome da gravadora
explícito: 'Explícito' se a música estiver marcada como explícita, caso contrário, ficará em branco
trackcount: número total de faixas do álbum em que esta faixa está
disccount: Número total de discos do álbum em que esta faixa está
spotid: ID do Spotify
Exemplo: Song: {name} of album: {album} Released in {rel_year}
.
O valor das variáveis com sua descrição terminando em * pode estar vazio em alguns casos. Isso também pode ser um caminho.
Formatador de nome de diretório de álbum : Esta opção permite definir o esquema de nomenclatura dos diretórios para faixas baixadas. Variáveis podem ser usadas colocando-as entre {}
. Algumas variáveis estão disponíveis para uso no esquema de nomenclatura:
artista: nome do artista principal do álbum
rel_year: o ano de lançamento do álbum *
álbum: nome do álbum
playlist_name : Nome da playlist se a faixa estiver sendo baixada como parte da playlist *
playlist_owner : Nome da playlist se a faixa estiver sendo baixada como parte da playlist *
playlist_desc : Descrição da playlist se a faixa estiver sendo baixada como parte da playlist *
gênero: Gênero da música *
label: Nome da gravadora
Exemplo: {artist}/{rel_year}/{album}
.
O valor das variáveis com sua descrição terminando em * pode estar vazio em alguns casos. Este também pode ser um caminho.
Tamanho do bloco de download : tamanho dos blocos (bytes) usados para download.
Desabilitar aviso de download em massa : Habilitar esta opção desativará as caixas de diálogo pop-up sobre o status ao usar downloads em massa.
Atraso na nova tentativa de downloads recuperáveis : tempo de espera antes de tentar outro download após tentativa fracassada.
Ignorar bytes no final (final do download ignorar bytes) : Às vezes, os últimos bytes de uma faixa não podem ser baixados, levando a um 'Erro PD' que faz com que os downloads falhem constantemente. Esta opção define o número de bytes para pular o download quando isso acontecer. O valor pode mudar, mas o valor de trabalho atual é '167' bytes. Se você receber “erros de decodificação” ou downloads de músicas incompletos, tente defini-lo como 0.
Forçar diretório de artista/álbum para itens de faixa/lista de reprodução : Se esta opção estiver desabilitada, as faixas baixadas serão colocadas na raiz do diretório de download em vez dos diretórios de artista/álbum. Ativar isso pode causar uma análise de download mais lenta, mas facilita a organização da música.
Formato de mídia : formato de mídia em que você deseja que o download final da música esteja. Não inclua '.' nele. Esta configuração será ignorada ao usar a opção de download de mídia bruta.
Erro de decodificação: se você estiver recebendo esse erro, sua conta pode ter sido restrita. Espere um pouco ou tente uma conta diferente. O aplicativo pode travar com frequência, pois ainda não há tratamento adequado de exceções. Você pode ajudar abrindo um novo problema com a mensagem de erro exibida na janela do console após o mau comportamento do aplicativo.
Você pode escrever código para incluir recursos adicionais ou correções de bugs ou fazer um problema relacionado a bugs e recursos ou apenas divulgar o trabalho sobre o aplicativo :) Se quiser apoiar financeiramente, você pode visitar Aqui e apoiar através de coletivo aberto ou BTC Se desejar o projeto, mostre seu apoio dando uma estrela :) !