Commit Graph

158 Commits

Author SHA1 Message Date
Manveer Basra
4fc23a84dc Refactored to use spotify_tools.SpotifyAuthorize class 2019-02-26 22:02:59 +05:30
Manveer Basra
c886ccf603 Refactored to pass tests 2019-02-26 21:24:54 +05:30
Manveer Basra
cf9b0690fd Set default client id/secret in handle.py to None 2019-02-26 21:23:09 +05:30
Manveer Basra
d215ce685d Exposed Spotify Client ID/Secret in config.yml 2019-02-26 21:22:08 +05:30
Manveer Basra
0492c711cc Refactored for consistency 2019-02-26 20:56:30 +05:30
Manveer Basra
42f33162ea --list flag accepts only text files using mimetypes 2019-02-26 20:56:03 +05:30
Ritiek Malhotra
ed1c068c36 Add tests 2019-02-26 09:50:59 +05:30
Ritiek Malhotra
e56cd3caca Add option for not falling back on YouTube metadata 2019-02-26 09:50:59 +05:30
Ritiek Malhotra
eb77880f9f Use YouTube as fallback for track metadata if not found on Spotify 2019-02-26 09:50:59 +05:30
Ritiek Malhotra
1d401d26c1 Bump to v1.1.2 2019-02-10 20:30:39 +05:30
Ritiek Malhotra
01c6c11a1d Black format code 2019-02-10 20:26:22 +05:30
Ritiek Malhotra
542201091d Fetch all artist albums by default 2019-02-04 15:24:37 +05:30
Ritiek Malhotra
a182fe5eb3 Use argparse special features to handle displaying version info (#486)
* Use argparse special features to handle displaying version info

* Remove version argument check from spotdl.py
2019-01-21 05:56:21 -08:00
Ritiek Malhotra
8944dec8e0 Merge branch 'master' into fix-m4a-when-encoder-not-found 2019-01-14 19:48:33 -08:00
Silverfeelin
6c07267312 Use folder argument as base for album/playlist file exports. 2019-01-13 17:12:05 +01:00
Ritiek Malhotra
31cd1c5856 Move 'encoder not found' warning to more appropriate place 2019-01-13 18:19:38 +05:30
Ritiek Malhotra
54d3336aa2 Fix renaming files when encoder is not present 2019-01-13 18:19:06 +05:30
tillhainbach
bf6e6fb0c5 first artist from album object for album artist 2019-01-08 22:53:22 +01:00
ifduyue
67ae7d5c4c Add missing import time (#465)
This fixes #464
2019-01-04 09:56:21 +00:00
Ritiek Malhotra
b58c4775f2 Run black formatter on the whole codebase (#460) 2019-01-02 19:22:50 +00:00
Ritiek Malhotra
c6bc994658 Fix conflicts caused by merge of #459 2019-01-03 00:43:37 +05:30
Ritiek Malhotra
53dd292b55 Fix conversion conflicts when both input and output filenames are same (#459)
* Workaround conversion conflicts by appending '.temp' to input filename

* Fix tests

* Add a test and some minor changes

* Update CHANGES.md
2019-01-02 18:54:27 +00:00
Ritiek Malhotra
0d0a85b761 Some updates for using spotdl as library 2018-12-29 14:56:00 +05:30
Ritiek Malhotra
fbc04671d8 Use Black to format code 2018-12-29 14:09:34 +05:30
Ritiek Malhotra
a4493a1e5f Bump to v1.1.1 2018-12-29 14:08:58 +05:30
Amit Lawanghare
1cf421960c Issue with Spotify-url and --no-metadata #452 (#454)
* Applied a check on null result in case of no youtube search

* Allow fetch metadata from spotify upon searching spotify-url and no-metadata

* updated changes.md

* Updated CHANGES.md as per suggestion

* removed unnecessary bool hit

Co-Authored-By: Amit-L <amit.lawanghare@gmail.com>

* removed unnecessary bool hit, anti PEP 8

Co-Authored-By: Amit-L <amit.lawanghare@gmail.com>

* resolved conflicts

* Error shown no videos found

* Dont to show any manual option for no result
2018-12-29 14:05:24 +05:30
Ritiek Malhotra
51b01fc448 [WIP] Monkeypatch tests (#448)
* Parameterize test_internals.py

* Create test_spotify_tools.py

* Monkeypatch pafy.download

* Monkeypatch YouTube search page

* Replace globals with fixtures

* Add missing urllib import, re-ordering and rename test_with_metadata.py

* Avoid creating temp directory in current working directory during test

* Update CHANGES.md
2018-12-26 17:15:56 +05:30
Ritiek Malhotra
9170ff22a7 Surround filename in quotes 2018-12-25 19:34:49 +05:30
Ritiek Malhotra
a0847f19b9 Fix .m4a containers 2018-12-25 19:32:49 +05:30
Ritiek Malhotra
9e6d7cdc99 Pass multiple tracks at once in --song argument 2018-12-03 21:47:57 +05:30
Ritiek Malhotra
1e34124de9 Import spotipy in downloader.py 2018-12-02 12:16:02 +05:30
Ritiek Malhotra
eae9316cee [WIP] Refactor spotdl.py; introduced classes (#410)
* Refactor spotdl.py; introduced classes

* introduce CheckExists class

* Move these classes to download.py

* Fix refresh_token

* Add a changelog entry
2018-11-25 17:07:56 +05:30
Ritiek Malhotra
f0ab90719b Bump to v1.1.0 (#427) 2018-11-13 23:28:52 +05:30
Manveer Basra
20b5e44ed4 --list flag accepts only text files using mimetypes (#414)
* --list flag accepts only text files using mimetypes

* Refactored for consistency

* Workaround to make tests pass
2018-10-29 23:00:35 -07:00
Ritiek Malhotra
be4bb25c96 Filter unwanted text from Spotify URLs when extracting information (#394)
* Split unwanted URL part

* Convert get_splits() -> extract_spotify_id()

* Add tests for extract_spotify_id()

* Extract Spotify artist ID when fetching artist albums
2018-10-26 18:29:29 +05:30
Manveer Basra
94dc27a77b Refactored refresh token (#408)
* Outputs error details when track download fails from list file

* Refactored Spotipy token refreshing

* Reverted to old refreshing method

Kept refresh_token() in spotify_tools.py
2018-10-25 20:00:46 +05:30
Manveer Basra
680525ea3d Outputs error details when track download fails from list file (#406) 2018-10-24 22:06:39 +05:30
Manveer Basra
94f0b3e95d Doesn't search song on Spotify if "--no-metadata" passed (#404)
* Doesn't search song on Spotify if '--no-metadata' passed

* Doesn't search song on Spotify if '--no-metadata' passed

* Doesn't war user that 'no metadata found' if '--no-metadata' passed
2018-10-23 17:27:12 +05:30
Manveer Basra
acff5fc8e2 Check and replace slashes with dashes to avoid directory creation error (#402)
* Added check for track titles containing slashes

* Revert white-space typos

* Added check for windows backslash

* Added check for non-string filename titles
2018-10-21 14:21:31 +05:30
Ritiek Malhotra
b12ca8c785 Add support for .m3u playlists (#401)
* Add support for .m3u playlists

* Run black code formatter on changes

* Stay consistent with Spotify test track
2018-10-20 16:19:14 +05:30
AlfredoSequeida
2b42f0b3a1 added the ability to get all artist's songs as suggested by #366 (#389)
* added the ability to get all artist's songs as suggested by #366

* added log to featch_all_albums_from_artist function and removed the use of a uri

* updated the functionality to get all albums with the ability to get singles

* updated main function with new write_all_albums_from_artist function to get all albums from an artist

* fixed typos

* updated test case for getting all albums from artist

* fixed typos
2018-10-10 23:53:10 -07:00
Ritiek Malhotra
519fe75eac Merge branch 'master' into comment-metadata 2018-10-09 01:30:06 -07:00
Linus Groh
13c83bd225 Introduce usage of black (code formatter) (#393) 2018-10-09 00:57:11 -07:00
Sam Redmond
71ee6ad5e2 Windows - 'My Music' folder won't be assumed to be on C drive (#387)
* Windows - 'My Music' folder won't be assumed to be on C drive

Windows has a nice registry check to get the absolute path of the 'My Music' folder. This helps because some people change their location of their music folder.

* Updated according to suggestions

Let me know if there are anymore improvements 👍

* Fixups
2018-10-09 00:25:45 -07:00
Linus Groh
525925de42 Break long line into multiple 2018-10-07 21:40:00 +02:00
Linus Groh
bef24eef7f Place newline before track URL when appending to track file 2018-10-05 00:00:23 +02:00
Linus Groh
3a52fe4de5 Add command line options for skip and successful file 2018-10-04 23:43:54 +02:00
Ritiek Malhotra
e076d11a19 Overwrite track file with unique tracks 2018-10-02 12:36:55 +05:30
Linus Groh
667477a4be Merge pull request #369 from ritiek/remove-duplicates-preserve-order
Remove duplicates whilst preserving order
2018-10-01 17:19:04 +02:00
Ritiek Malhotra
f80c223025 Embed comment metadata in .m4a 2018-10-01 19:10:28 +05:30