All Projects → kaimi-io → Yandex Music Download

kaimi-io / Yandex Music Download

Licence: mit
Yandex Music Downloader

Programming Languages

perl
6916 projects

Projects that are alternatives of or similar to Yandex Music Download

Ytmdl
A simple app to get songs from YouTube in mp3 format with artist name, album name etc from sources like iTunes, Spotify, LastFM, Deezer, Gaana etc.
Stars: ✭ 2,070 (+2102.13%)
Mutual labels:  free-software, music, mp3
Videoshow
Simple node.js utility to create video slideshows from images with optional audio and visual effects using ffmpeg
Stars: ✭ 618 (+557.45%)
Mutual labels:  music, mp3
Spotify Downloader
Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found).
Stars: ✭ 6,957 (+7301.06%)
Mutual labels:  music, mp3
Minimp3
Minimalistic MP3 decoder single header library
Stars: ✭ 898 (+855.32%)
Mutual labels:  music, mp3
Spotiflyer
Spotify/Gaana/Youtube Music Downloader For Android!
Stars: ✭ 231 (+145.74%)
Mutual labels:  music, mp3
Eyed3
eyeD3 is a Python module and command line program for processing ID3 tags. Information about mp3 files (i.e bit rate, sample frequency, play time, etc.) is also provided. The formats supported are ID3v1 (1.0/1.1) and ID3v2 (2.3/2.4).
Stars: ✭ 300 (+219.15%)
Mutual labels:  music, mp3
Smd
Spotify Music Downloader
Stars: ✭ 822 (+774.47%)
Mutual labels:  free-software, music
Audioworks
A cross-platform, multi-format audio conversion and tagging suite
Stars: ✭ 35 (-62.77%)
Mutual labels:  music, mp3
Piano
🎹用键盘8个键演奏一首蒲公英的约定送给自己或月亮代表我的心送给她
Stars: ✭ 850 (+804.26%)
Mutual labels:  music, mp3
Alltomp3 App
Download and Convert YouTube, SoundCloud & Spotify in MP3 with full tags (title, artist, genre, cover, lyrics 🔥)
Stars: ✭ 920 (+878.72%)
Mutual labels:  music, mp3
Openwhyd
💎 Like Pinterest, for Music
Stars: ✭ 287 (+205.32%)
Mutual labels:  music, mp3
Deprecated Lame Mirror
[DEPRECATED] Old, Semi-official mirror of the CVS repository of the LAME MP3 encoder.
Stars: ✭ 73 (-22.34%)
Mutual labels:  music, mp3
Alonetone
A free, open source, non-commercial home for musicians and their music
Stars: ✭ 270 (+187.23%)
Mutual labels:  music, mp3
Simple Music Player
Simple Music Player - SimpleMP - Keeps it simple and plays your music
Stars: ✭ 298 (+217.02%)
Mutual labels:  music, mp3
Irs
🎸 🎶 A music downloader that understands your metadata needs.
Stars: ✭ 268 (+185.11%)
Mutual labels:  music, mp3
Mutagen
Python module for handling audio metadata
Stars: ✭ 760 (+708.51%)
Mutual labels:  music, mp3
Datmusic Api
Alternative for VK Audio API
Stars: ✭ 160 (+70.21%)
Mutual labels:  music, mp3
Youtube Mp3 Downloader
Extract music from YouTube videos
Stars: ✭ 187 (+98.94%)
Mutual labels:  music, mp3
Httpms
Media server with RESTful API and Web interface. Think of it as your very own Spotify!
Stars: ✭ 18 (-80.85%)
Mutual labels:  music, mp3
Musicdownloader
Material design YouTube mp3/mp4 downloader
Stars: ✭ 70 (-25.53%)
Mutual labels:  music, mp3

Yandex Music Downloader

Perl License

Telegram Twitter

Yandex Music Downloader usage

Simple command line Perl script for downloading music from Yandex Music (http://music.yandex.ru). Origin of the script is the following article: https://kaimi.io/2013/11/yandex-music-downloader/.

Contents

Requirements

Environment

  • Linux/Windows/MacOS (anything, that runs Perl)
  • Perl >= 5.12

Perl modules

  • General

    • Digest::MD5
    • File::Copy
    • File::Spec
    • File::Temp
    • Getopt::Long::Descriptive
    • HTML::Entities
    • HTTP::Cookies
    • JSON::PP
    • LWP::Protocol::https
    • LWP::UserAgent
    • MP3::Tag
    • Term::ANSIColor
    • Mozilla::CA
  • Windows-only modules

    • Win32::API
    • Win32::Console
    • Win32API::File

Installation

Ubuntu / Debian

# Prerequisites
sudo apt-get update
sudo apt-get -y install perl cpanminus make git
sudo apt-get -y install libwww-perl liblwp-protocol-https-perl libhttp-cookies-perl libhtml-parser-perl libmp3-tag-perl libgetopt-long-descriptive-perl libarchive-zip-perl
cpanm Mozilla::CA

# Get a copy and run
git clone https://github.com/kaimi-io/yandex-music-download.git
cd yandex-music-download/src
perl ya.pl -h

MacOS

  1. Install brew (https://brew.sh/).
  2. Run:
brew update
brew install perl cpanminus git
cpanm Digest::MD5 File::Copy File::Spec File::Temp Getopt::Long::Descriptive HTML::Entities HTTP::Cookies JSON::PP LWP::Protocol::https LWP::UserAgent MP3::Tag Term::ANSIColor Mozilla::CA

git clone https://github.com/kaimi-io/yandex-music-download.git
cd yandex-music-download/src
perl ya.pl -h

Windows

With WSL (Windows Subsystem for Linux) installation will be similar to Ubuntu / Debian. Otherwise:

  1. Download and install ActiveState Perl (https://www.activestate.com/products/perl/downloads/) or Strawberry Perl (http://strawberryperl.com/).

  2. Ensure, that Perl was added to system PATH environment variable.

  3. From Windows command line run: perl -v. It should output Perl version. If not, refer to your Perl distribution documentation about adding Perl to your PATH environment variable.

  4. Install required modules (it can be done via PPM if you're using ActiveState Perl):

cpan install Digest::MD5 File::Copy File::Spec File::Temp Getopt::Long::Descriptive HTML::Entities HTTP::Cookies JSON::PP LWP::Protocol::https LWP::UserAgent MP3::Tag Term::ANSIColor Mozilla::CA Win32::API Win32::Console Win32API::File
  1. Download and unpack Yandex Music Downloader (https://github.com/kaimi-io/yandex-music-download/archive/master.zip).
  2. Run:
cd yandex-music-download/src
perl ya.pl -h

Docker

  1. Install Docker (https://docs.docker.com/get-docker/).
  2. Run:
git clone https://github.com/kaimi-io/yandex-music-download.git
cd yandex-music-download
docker build --tag yandex-music-downloader:1.0 .
docker run --init --rm -v $(PWD):/root/ --name yamusic yandex-music-downloader:1.0 -d /root --cookie "Session_id=..." -u https://music.yandex.ru/album/215688/track/1710808

Usage

Yandex Music Downloader v1.1

ya.pl [-adklpstu] [long options...]
        -p[=INT] --playlist[=INT]  playlist id to download
        -k[=STR] --kind[=STR]      playlist kind (eg. ya-playlist,
                                   music-blog, music-partners, etc.)
        -a[=INT] --album[=INT]     album to download
        -t[=INT] --track[=INT]     track to download (album id must be
                                   specified)
        -u[=STR] --url[=STR]       download by URL
        -d[=STR] --dir[=STR]       download path (current direcotry will be
                                   used by default)
        --proxy STR                HTTP-proxy (format: 1.2.3.4:8888)
        --exclude STR              skip tracks specified in file
        --include STR              download only tracks specified in file
        --delay INT                delay between downloads (in seconds)
        --mobile INT               use mobile API
        --auth STR                 authorization header for mobile version
                                   (OAuth...)
        --cookie STR               authorization cookie for web version
                                   (Session_id=...)
        --bitrate INT              bitrate (eg. 64, 128, 192, 320)
        --pattern STR              track naming pattern
        Available placeholders: #number, #artist,
        #title

        -l --link                  do not fetch, only print links to the
                                   tracks
        -s --silent                do not print informational messages
        --debug                    print debug info during work
        --help                     print usage

        --include and --exclude options use weak
        match i.e. ~/$term/

        Example:
        ya.pl -p 123 -k ya-playlist
        ya.pl -a 123
        ya.pl -a 123 -t 321
        ya.pl -u
        https://music.yandex.ru/album/215690
        ya.pl -u
        https://music.yandex.ru/album/215688/track/1710808
        ya.pl -u
        https://music.yandex.ru/users/ya.playlist/playlists/1257

        © 2013-2020 by Kaimi (https://kaimi.io)

FAQ

What is the cause for "[ERROR] Yandex.Music is not available"?

Currently Yandex Music is available only for Russia and CIS countries. For other countries you should either acquire paid subscription or use it through proxy (--proxy parameter) from one of those countries. Thus it is possible to download from any country if you have an active Yandex.Music service subscription (https://music.yandex.ru/pay).

Contribute

If you want to help make Yandex Music Downloader better the easiest thing you can do is to report issues and feature requests. Or you can help in development.

License

Yandex Music Downloader Copyright © 2013-2021 by Kaimi (Sergey Belov) - https://kaimi.io.

Yandex Music Downloader is free software: you can redistribute it and/or modify it under the terms of the Massachusetts Institute of Technology (MIT) License.

You should have received a copy of the MIT License along with Yandex Music Downloader. If not, see MIT License.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].