Skip to content

Commit cb55716

Browse files
committed
2 parents 5a388b9 + e44bef6 commit cb55716

File tree

1 file changed

+24
-29
lines changed

1 file changed

+24
-29
lines changed

README.rst

Lines changed: 24 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
1-
spotify-ripper |Version|
1+
spotify-ripper
22
========================
33

44
A fork of
55
`spotify-ripper <https://github.com/robbeofficial/spotifyripper>`__ that
66
uses `pyspotify <https://github.com/mopidy/pyspotify>`__ v2.x and `spotipy <https://github.com/plamere/spotipy>`__
77

8-
Spotify-ripper is a small ripper script for Spotify that rips Spotify
9-
URIs to audio files and includes ID3 tags and cover art. By default spotify-ripper will encode to MP3 files, but includes the ability to rip to WAV, FLAC, Ogg Vorbis, Opus, AAC, and MP4/M4A.
8+
Spotify-ripper is a small ripper script for Spotify that rips Spotify URIs to audio files and includes ID3 tags and cover art. By default spotify-ripper will encode to MP3 files, but includes the ability to rip to WAV, FLAC, Ogg Vorbis, Opus, AAC, and MP4/M4A.
109

1110
**Note that stream ripping violates the libspotify's ToS**
1211

@@ -72,26 +71,22 @@ Features
7271
**Please note: Spotify’s highest quality setting is 320 kbps, so the benefit of ripping to a lossless format is to not double encode the audio data. It’s not possible to rip in true lossless quality.**
7372

7473

75-
Spotipy Intergration
74+
Spotipy Integration
7675
--------------------
77-
Downloading playlists does not work anymore through libspotify due to changes in the Spotify API. As a workaround, spotipy, a small python library using the Spotify Web API, is being used for playlists (and currently for playlists only!)
78-
Using Spotify as described below is not mandatory for spotify-ripper. It is only needed for downloading playlists.
76+
To download playlists and to filterartist albums (see options `--artist-album-type` and `--artist-album-market`, spotipy, a small python library using the Spotify Web API, is being used.
77+
Using spotipy and the Web API is not mandatory for the usage of spotify-ripper! However for proper function of the module it is advised to follow below workflow to have full functionality.
7978

79+
1)
8080
Create a Client ID at https://developer.spotify.com/dashboard/applications
81-
The Redirect_uri needs to `http://localhost` (can be changed in "Edit settings")
82-
Copy/Paste the Client ID and Client Secret and export them in to your shell
83-
.. code::
84-
85-
export SPOTIPY_CLIENT_ID='123456789'
86-
export SPOTIPY_CLIENT_SECRET='abcde123456789'
87-
81+
The Redirect URI can be any site that you can access. E.g. it can be `http://localhost`. It is only important thatit is accessible from the device you are doing the authorisation from.
82+
Copy/Paste the Client ID and Client Secret and include them into web.py
8883

8984
Then, run spotify-ripper (as described below). When downloading an album or playlist, a browser window will be opened.
9085
You will be asked to login and approve your app.
9186

92-
A blank webpage will now be shown with an url something like
87+
A blank webpage will now be shown with an url something like this:
9388
``http://localhost/?code=AQA3ZzBDw2s4SiMDdu0qkE``
94-
copy this URL, paste it to your terminal and hit Enter
89+
Copy this URL, paste it to your terminal and hit Enter
9590

9691
Reference: https://spotipy.readthedocs.io/en/latest/#authorized-requests
9792

@@ -140,7 +135,7 @@ Command Line
140135
--aac Rip songs to AAC format with FreeAAC instead of MP3
141136
--alac Rip songs to Apple Lossless format instead of MP3
142137
--artist-album-type ARTIST_ALBUM_TYPE
143-
Only load albums of specified types when passing a Spotify artist URI [Default=album,single,ep,compilation,appears_on]
138+
Only load albums of specified types when passing a Spotify artist URI [Default=album,single,compilation,appears_on]
144139
--artist-album-market ARTIST_ALBUM_MARKET
145140
Only load albums with the specified ISO2 country code when passing a Spotify artist URI. You may get duplicate albums if not set. [Default=any]
146141
-A, --ascii-path-only
@@ -223,7 +218,7 @@ Spotify-ripper will work with your regular Facebook login/password if you setup
223218
Config File
224219
~~~~~~~~~~~
225220

226-
For options that you want set on every run, you can use a config file named ``config.ini`` in the settings folder (defaults to ``~/.spotify-ripper``). The options in the config file use the same name as the command line options with the exception that dashes are translated to ``snake_case``. Any option specified in the command line will overwrite any setting in the config file. Please put all options under a ``[main]`` section.
221+
For options that you want set on every run, you can use a config file named ``config.ini`` in the settings folder (defaults to ``home/user/.spotify-ripper``). The options in the config file use the same name as the command line options with the exception that dashes are translated to ``snake_case``. Any option specified in the command line will overwrite any setting in the config file. Please put all options under a ``[main]`` section.
227222

228223
Here is an example config file
229224

@@ -357,6 +352,8 @@ Prerequisites
357352

358353
- `colorama <https://pypi.python.org/pypi/colorama>`__
359354

355+
- `spotipy <https://pypi.org/project/spotipy>`__
356+
360357
- (optional) `flac <https://xiph.org/flac/index.html>`__
361358

362359
- (optional) `opus-tools <http://www.opus-codec.org/downloads/>`__
@@ -514,30 +511,28 @@ Use ``git pull`` to upgrade to the latest version.
514511
$ cd spotify-ripper
515512
$ git pull
516513
517-
You need to install the scripts again after each upgrade.
514+
515+
You need to install the scripts again after each upgrade.
518516

519517
.. code:: bash
520518
521519
$ cd spotify-ripper
522520
$ sudo python setup.py install
523521
524522
525-
Common Issues and Problems
526-
--------------------------
527-
528-
Help for common problems while using spotify-ripper can be found in the `wiki <https://github.com/hbashton/spotify-ripper/wiki/Help>`__.
529-
530-
531-
Release Notes
532-
-------------
523+
TODOs
524+
-------
533525

534-
Release notes can be found in the `wiki <https://github.com/hbashton/spotify-ripper/wiki/Release-Notes>`__.
526+
- [ ] Save files under Album artist instead of Track artist
527+
- [ ] Check if an Album has more than one CD and save files in seperate folders accordingly
528+
- [ ] Clean up summary: Summarise success and failure output per album/playlist, structurise more
529+
- [ ] Change to Wep API for filtered albums call
530+
- [ ] Scrap spotipy and use WEP API exclusively.
535531

536532

537533
License
538534
-------
539535

540536
`MIT License <http://en.wikipedia.org/wiki/MIT_License>`__
541537

542-
.. |Version| image:: http://img.shields.io/pypi/v/spotify-ripper.svg?style=flat-square
543-
:target: https://pypi.python.org/pypi/spotify-ripper
538+

0 commit comments

Comments
 (0)