0

Update README.md

This commit is contained in:
Kaimi
2020-04-21 15:49:26 +03:00
committed by GitHub
parent 6a595e8317
commit 9bb85095e9

136
README.md
View File

@@ -2,11 +2,107 @@ Yandex Music Downloader
=====================
[![Perl](https://img.shields.io/badge/perl-green.svg)](https://www.perl.org/) [![License](https://img.shields.io/badge/license-MIT-red.svg)](https://raw.githubusercontent.com/kaimi-io/yandex-music-download/master/LICENSE)
This is a simple command line Perl script for downloading music from Yandex Music (http://music.yandex.ru).
![Yandex Music Downloader usage](https://github.com/kaimi-io/yandex-music-download/blob/master/usage.gif?raw=true)
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/
## Usage
## Contents
- [Requirements](#Requirements)
- [Environment](#Environment)
- [Perl modules](#Perl-modules)
- [Windows-only modules](#Windows-only-modules)
- [Installation](#Installation)
- [Ubuntu / Debian](#Ubuntu-/-Debian)
- [MacOS](#MacOS)
- [Windows](#Windows)
- [Docker](#Docker)
- [Usage](#Usage)
- [Frequently Asked Questions (FAQ)](#FAQ)
- [Contribute](#Contribute)
- [License](#License)
## 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
```bash
# 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:
```bash
brew update
brew install perl cpanminus git
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](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):
```bash
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 Mozilla::CA Term::ANSIColor Win32::API Win32::Console Win32API::File
```
5. Download and unpack Yandex Music Downloader (https://github.com/kaimi-io/yandex-music-download/archive/master.zip)
6. Run:
```bash
cd yandex-music-download/src
perl ya.pl -h
```
### Docker
1. Install Docker (https://docs.docker.com/get-docker/)
2. Run:
```bash
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 --rm -v $(PWD):/root/ --name yamusic yandex-music-downloader:1.0 -d /root -u https://music.yandex.ru/album/215688/track/1710808
```
## Usage
```bat
ya.pl [-adkptu] [long options...]
-p --playlist playlist id to download
@@ -44,30 +140,16 @@ ya.pl [-adkptu] [long options...]
```
## Dependencies
## 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 and use ```--auth``` parameter or use it through proxy (```--proxy``` parameter) from one of those countries.
### Linux
```
Digest::MD5
File::Copy
File::Spec
File::Temp
Getopt::Long::Descriptive
HTML::Entities
HTTP::Cookies
JSON::PP
LWP::Protocol::https
LWP::UserAgent
MP3::Tag
Mozilla::CA
Term::ANSIColor
```
### Windows
Above and
```
Win32::API
Win32::Console
Win32API::File
```
## 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.
For further assistance don't hesitate to ask for help in GitHub issues or on the blog: https://kaimi.io
## License
Yandex Music Downloader Copyright © 2013-2020 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](LICENSE)