summaryrefslogtreecommitdiff
path: root/python-qobuz-dl.spec
diff options
context:
space:
mode:
Diffstat (limited to 'python-qobuz-dl.spec')
-rw-r--r--python-qobuz-dl.spec610
1 files changed, 610 insertions, 0 deletions
diff --git a/python-qobuz-dl.spec b/python-qobuz-dl.spec
new file mode 100644
index 0000000..eab7a72
--- /dev/null
+++ b/python-qobuz-dl.spec
@@ -0,0 +1,610 @@
+%global _empty_manifest_terminate_build 0
+Name: python-qobuz-dl
+Version: 0.9.9.10
+Release: 1
+Summary: The complete Lossless and Hi-Res music downloader for Qobuz
+License: GNU General Public License (GPL)
+URL: https://github.com/vitiko98/Qobuz-DL
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/8c/5b/ae62a2607b64134efcefccfb0b858b6017506c72738606c3b30e3bab3ea0/qobuz-dl-0.9.9.10.tar.gz
+BuildArch: noarch
+
+Requires: python3-pathvalidate
+Requires: python3-requests
+Requires: python3-mutagen
+Requires: python3-tqdm
+Requires: python3-pick
+Requires: python3-beautifulsoup4
+Requires: python3-colorama
+
+%description
+# qobuz-dl
+Search, explore and download Lossless and Hi-Res music from [Qobuz](https://www.qobuz.com/).
+[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VZWSWVGZGJRMU&source=url)
+
+## Features
+
+* Download FLAC and MP3 files from Qobuz
+* Explore and download music directly from your terminal with **interactive** or **lucky** mode
+* Download albums, tracks, artists, playlists and labels with **download** mode
+* Download music from last.fm playlists (Spotify, Apple Music and Youtube playlists are also supported through this method)
+* Queue support on **interactive** mode
+* Effective duplicate handling with own portable database
+* Support for albums with multiple discs
+* Support for M3U playlists
+* Downloads URLs from text file
+* Extended tags
+* And more
+
+## Getting started
+
+> You'll need an **active subscription**
+
+#### Install qobuz-dl with pip
+##### Linux / MAC OS
+```
+pip3 install --upgrade qobuz-dl
+```
+##### Windows
+```
+pip3 install windows-curses
+pip3 install --upgrade qobuz-dl
+```
+#### Run qobuz-dl and enter your credentials
+##### Linux / MAC OS
+```
+qobuz-dl
+```
+##### Windows
+```
+qobuz-dl.exe
+```
+
+> If something fails, run `qobuz-dl -r` to reset your config file.
+
+## Examples
+
+### Download mode
+Download URL in 24B<96khz quality
+```
+qobuz-dl dl https://play.qobuz.com/album/qxjbxh1dc3xyb -q 7
+```
+Download multiple URLs to custom directory
+```
+qobuz-dl dl https://play.qobuz.com/artist/2038380 https://play.qobuz.com/album/ip8qjy1m6dakc -d "Some pop from 2020"
+```
+Download multiple URLs from text file
+```
+qobuz-dl dl this_txt_file_has_urls.txt
+```
+Download albums from a label and also embed cover art images into the downloaded files
+```
+qobuz-dl dl https://play.qobuz.com/label/7526 --embed-art
+```
+Download a Qobuz playlist in maximum quality
+```
+qobuz-dl dl https://play.qobuz.com/playlist/5388296 -q 27
+```
+Download all the music from an artist except singles, EPs and VA releases
+```
+qobuz-dl dl https://play.qobuz.com/artist/2528676 --albums-only
+```
+
+#### Last.fm playlists
+> Last.fm has a new feature for creating playlists: you can create your own based on the music you listen to or you can import one from popular streaming services like Spotify, Apple Music and Youtube. Visit: `https://www.last.fm/user/<your profile>/playlists` (e.g. https://www.last.fm/user/vitiko98/playlists) to get started.
+
+Download a last.fm playlist in the maximum quality
+```
+qobuz-dl dl https://www.last.fm/user/vitiko98/playlists/11887574 -q 27
+```
+
+Run `qobuz-dl dl --help` for more info.
+
+### Interactive mode
+Run interactive mode with a limit of 10 results
+```
+qobuz-dl fun -l 10
+```
+Type your search query
+```
+Logging...
+Logged: OK
+Membership: Studio
+
+
+Enter your search: [Ctrl + c to quit]
+- fka twigs magdalene
+```
+`qobuz-dl` will bring up a nice list of releases. Now choose whatever releases you want to download (everything else is interactive).
+
+Run `qobuz-dl fun --help` for more info.
+
+### Lucky mode
+Download the first album result
+```
+qobuz-dl lucky playboi carti die lit
+```
+Download the first 5 artist results
+```
+qobuz-dl lucky joy division -n 5 --type artist
+```
+Download the first 3 track results in 320 quality
+```
+qobuz-dl lucky eric dolphy remastered --type track -n 3 -q 5
+```
+Download the first track result without cover art
+```
+qobuz-dl lucky jay z story of oj --type track --no-cover
+```
+
+Run `qobuz-dl lucky --help` for more info.
+
+### Other
+Reset your config file
+```
+qobuz-dl -r
+```
+
+By default, `qobuz-dl` will skip already downloaded items by ID with the message `This release ID ({item_id}) was already downloaded`. To avoid this check, add the flag `--no-db` at the end of a command. In extreme cases (e.g. lost collection), you can run `qobuz-dl -p` to completely reset the database.
+
+## Usage
+```
+usage: qobuz-dl [-h] [-r] {fun,dl,lucky} ...
+
+The ultimate Qobuz music downloader.
+See usage examples on https://github.com/vitiko98/qobuz-dl
+
+optional arguments:
+ -h, --help show this help message and exit
+ -r, --reset create/reset config file
+ -p, --purge purge/delete downloaded-IDs database
+
+commands:
+ run qobuz-dl <command> --help for more info
+ (e.g. qobuz-dl fun --help)
+
+ {fun,dl,lucky}
+ fun interactive mode
+ dl input mode
+ lucky lucky mode
+```
+
+## Module usage
+Using `qobuz-dl` as a module is really easy. Basically, the only thing you need is `QobuzDL` from `core`.
+
+```python
+import logging
+from qobuz_dl.core import QobuzDL
+
+logging.basicConfig(level=logging.INFO)
+
+email = "your@email.com"
+password = "your_password"
+
+qobuz = QobuzDL()
+qobuz.get_tokens() # get 'app_id' and 'secrets' attrs
+qobuz.initialize_client(email, password, qobuz.app_id, qobuz.secrets)
+
+qobuz.handle_url("https://play.qobuz.com/album/va4j3hdlwaubc")
+```
+
+Attributes, methods and parameters have been named as self-explanatory as possible.
+
+## A note about Qo-DL
+`qobuz-dl` is inspired in the discontinued Qo-DL-Reborn. This tool uses two modules from Qo-DL: `qopy` and `spoofer`, both written by Sorrow446 and DashLt.
+## Disclaimer
+* This tool was written for educational purposes. I will not be responsible if you use this program in bad faith. By using it, you are accepting the [Qobuz API Terms of Use](https://static.qobuz.com/apps/api/QobuzAPI-TermsofUse.pdf).
+* `qobuz-dl` is not affiliated with Qobuz
+
+
+%package -n python3-qobuz-dl
+Summary: The complete Lossless and Hi-Res music downloader for Qobuz
+Provides: python-qobuz-dl
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-qobuz-dl
+# qobuz-dl
+Search, explore and download Lossless and Hi-Res music from [Qobuz](https://www.qobuz.com/).
+[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VZWSWVGZGJRMU&source=url)
+
+## Features
+
+* Download FLAC and MP3 files from Qobuz
+* Explore and download music directly from your terminal with **interactive** or **lucky** mode
+* Download albums, tracks, artists, playlists and labels with **download** mode
+* Download music from last.fm playlists (Spotify, Apple Music and Youtube playlists are also supported through this method)
+* Queue support on **interactive** mode
+* Effective duplicate handling with own portable database
+* Support for albums with multiple discs
+* Support for M3U playlists
+* Downloads URLs from text file
+* Extended tags
+* And more
+
+## Getting started
+
+> You'll need an **active subscription**
+
+#### Install qobuz-dl with pip
+##### Linux / MAC OS
+```
+pip3 install --upgrade qobuz-dl
+```
+##### Windows
+```
+pip3 install windows-curses
+pip3 install --upgrade qobuz-dl
+```
+#### Run qobuz-dl and enter your credentials
+##### Linux / MAC OS
+```
+qobuz-dl
+```
+##### Windows
+```
+qobuz-dl.exe
+```
+
+> If something fails, run `qobuz-dl -r` to reset your config file.
+
+## Examples
+
+### Download mode
+Download URL in 24B<96khz quality
+```
+qobuz-dl dl https://play.qobuz.com/album/qxjbxh1dc3xyb -q 7
+```
+Download multiple URLs to custom directory
+```
+qobuz-dl dl https://play.qobuz.com/artist/2038380 https://play.qobuz.com/album/ip8qjy1m6dakc -d "Some pop from 2020"
+```
+Download multiple URLs from text file
+```
+qobuz-dl dl this_txt_file_has_urls.txt
+```
+Download albums from a label and also embed cover art images into the downloaded files
+```
+qobuz-dl dl https://play.qobuz.com/label/7526 --embed-art
+```
+Download a Qobuz playlist in maximum quality
+```
+qobuz-dl dl https://play.qobuz.com/playlist/5388296 -q 27
+```
+Download all the music from an artist except singles, EPs and VA releases
+```
+qobuz-dl dl https://play.qobuz.com/artist/2528676 --albums-only
+```
+
+#### Last.fm playlists
+> Last.fm has a new feature for creating playlists: you can create your own based on the music you listen to or you can import one from popular streaming services like Spotify, Apple Music and Youtube. Visit: `https://www.last.fm/user/<your profile>/playlists` (e.g. https://www.last.fm/user/vitiko98/playlists) to get started.
+
+Download a last.fm playlist in the maximum quality
+```
+qobuz-dl dl https://www.last.fm/user/vitiko98/playlists/11887574 -q 27
+```
+
+Run `qobuz-dl dl --help` for more info.
+
+### Interactive mode
+Run interactive mode with a limit of 10 results
+```
+qobuz-dl fun -l 10
+```
+Type your search query
+```
+Logging...
+Logged: OK
+Membership: Studio
+
+
+Enter your search: [Ctrl + c to quit]
+- fka twigs magdalene
+```
+`qobuz-dl` will bring up a nice list of releases. Now choose whatever releases you want to download (everything else is interactive).
+
+Run `qobuz-dl fun --help` for more info.
+
+### Lucky mode
+Download the first album result
+```
+qobuz-dl lucky playboi carti die lit
+```
+Download the first 5 artist results
+```
+qobuz-dl lucky joy division -n 5 --type artist
+```
+Download the first 3 track results in 320 quality
+```
+qobuz-dl lucky eric dolphy remastered --type track -n 3 -q 5
+```
+Download the first track result without cover art
+```
+qobuz-dl lucky jay z story of oj --type track --no-cover
+```
+
+Run `qobuz-dl lucky --help` for more info.
+
+### Other
+Reset your config file
+```
+qobuz-dl -r
+```
+
+By default, `qobuz-dl` will skip already downloaded items by ID with the message `This release ID ({item_id}) was already downloaded`. To avoid this check, add the flag `--no-db` at the end of a command. In extreme cases (e.g. lost collection), you can run `qobuz-dl -p` to completely reset the database.
+
+## Usage
+```
+usage: qobuz-dl [-h] [-r] {fun,dl,lucky} ...
+
+The ultimate Qobuz music downloader.
+See usage examples on https://github.com/vitiko98/qobuz-dl
+
+optional arguments:
+ -h, --help show this help message and exit
+ -r, --reset create/reset config file
+ -p, --purge purge/delete downloaded-IDs database
+
+commands:
+ run qobuz-dl <command> --help for more info
+ (e.g. qobuz-dl fun --help)
+
+ {fun,dl,lucky}
+ fun interactive mode
+ dl input mode
+ lucky lucky mode
+```
+
+## Module usage
+Using `qobuz-dl` as a module is really easy. Basically, the only thing you need is `QobuzDL` from `core`.
+
+```python
+import logging
+from qobuz_dl.core import QobuzDL
+
+logging.basicConfig(level=logging.INFO)
+
+email = "your@email.com"
+password = "your_password"
+
+qobuz = QobuzDL()
+qobuz.get_tokens() # get 'app_id' and 'secrets' attrs
+qobuz.initialize_client(email, password, qobuz.app_id, qobuz.secrets)
+
+qobuz.handle_url("https://play.qobuz.com/album/va4j3hdlwaubc")
+```
+
+Attributes, methods and parameters have been named as self-explanatory as possible.
+
+## A note about Qo-DL
+`qobuz-dl` is inspired in the discontinued Qo-DL-Reborn. This tool uses two modules from Qo-DL: `qopy` and `spoofer`, both written by Sorrow446 and DashLt.
+## Disclaimer
+* This tool was written for educational purposes. I will not be responsible if you use this program in bad faith. By using it, you are accepting the [Qobuz API Terms of Use](https://static.qobuz.com/apps/api/QobuzAPI-TermsofUse.pdf).
+* `qobuz-dl` is not affiliated with Qobuz
+
+
+%package help
+Summary: Development documents and examples for qobuz-dl
+Provides: python3-qobuz-dl-doc
+%description help
+# qobuz-dl
+Search, explore and download Lossless and Hi-Res music from [Qobuz](https://www.qobuz.com/).
+[![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=VZWSWVGZGJRMU&source=url)
+
+## Features
+
+* Download FLAC and MP3 files from Qobuz
+* Explore and download music directly from your terminal with **interactive** or **lucky** mode
+* Download albums, tracks, artists, playlists and labels with **download** mode
+* Download music from last.fm playlists (Spotify, Apple Music and Youtube playlists are also supported through this method)
+* Queue support on **interactive** mode
+* Effective duplicate handling with own portable database
+* Support for albums with multiple discs
+* Support for M3U playlists
+* Downloads URLs from text file
+* Extended tags
+* And more
+
+## Getting started
+
+> You'll need an **active subscription**
+
+#### Install qobuz-dl with pip
+##### Linux / MAC OS
+```
+pip3 install --upgrade qobuz-dl
+```
+##### Windows
+```
+pip3 install windows-curses
+pip3 install --upgrade qobuz-dl
+```
+#### Run qobuz-dl and enter your credentials
+##### Linux / MAC OS
+```
+qobuz-dl
+```
+##### Windows
+```
+qobuz-dl.exe
+```
+
+> If something fails, run `qobuz-dl -r` to reset your config file.
+
+## Examples
+
+### Download mode
+Download URL in 24B<96khz quality
+```
+qobuz-dl dl https://play.qobuz.com/album/qxjbxh1dc3xyb -q 7
+```
+Download multiple URLs to custom directory
+```
+qobuz-dl dl https://play.qobuz.com/artist/2038380 https://play.qobuz.com/album/ip8qjy1m6dakc -d "Some pop from 2020"
+```
+Download multiple URLs from text file
+```
+qobuz-dl dl this_txt_file_has_urls.txt
+```
+Download albums from a label and also embed cover art images into the downloaded files
+```
+qobuz-dl dl https://play.qobuz.com/label/7526 --embed-art
+```
+Download a Qobuz playlist in maximum quality
+```
+qobuz-dl dl https://play.qobuz.com/playlist/5388296 -q 27
+```
+Download all the music from an artist except singles, EPs and VA releases
+```
+qobuz-dl dl https://play.qobuz.com/artist/2528676 --albums-only
+```
+
+#### Last.fm playlists
+> Last.fm has a new feature for creating playlists: you can create your own based on the music you listen to or you can import one from popular streaming services like Spotify, Apple Music and Youtube. Visit: `https://www.last.fm/user/<your profile>/playlists` (e.g. https://www.last.fm/user/vitiko98/playlists) to get started.
+
+Download a last.fm playlist in the maximum quality
+```
+qobuz-dl dl https://www.last.fm/user/vitiko98/playlists/11887574 -q 27
+```
+
+Run `qobuz-dl dl --help` for more info.
+
+### Interactive mode
+Run interactive mode with a limit of 10 results
+```
+qobuz-dl fun -l 10
+```
+Type your search query
+```
+Logging...
+Logged: OK
+Membership: Studio
+
+
+Enter your search: [Ctrl + c to quit]
+- fka twigs magdalene
+```
+`qobuz-dl` will bring up a nice list of releases. Now choose whatever releases you want to download (everything else is interactive).
+
+Run `qobuz-dl fun --help` for more info.
+
+### Lucky mode
+Download the first album result
+```
+qobuz-dl lucky playboi carti die lit
+```
+Download the first 5 artist results
+```
+qobuz-dl lucky joy division -n 5 --type artist
+```
+Download the first 3 track results in 320 quality
+```
+qobuz-dl lucky eric dolphy remastered --type track -n 3 -q 5
+```
+Download the first track result without cover art
+```
+qobuz-dl lucky jay z story of oj --type track --no-cover
+```
+
+Run `qobuz-dl lucky --help` for more info.
+
+### Other
+Reset your config file
+```
+qobuz-dl -r
+```
+
+By default, `qobuz-dl` will skip already downloaded items by ID with the message `This release ID ({item_id}) was already downloaded`. To avoid this check, add the flag `--no-db` at the end of a command. In extreme cases (e.g. lost collection), you can run `qobuz-dl -p` to completely reset the database.
+
+## Usage
+```
+usage: qobuz-dl [-h] [-r] {fun,dl,lucky} ...
+
+The ultimate Qobuz music downloader.
+See usage examples on https://github.com/vitiko98/qobuz-dl
+
+optional arguments:
+ -h, --help show this help message and exit
+ -r, --reset create/reset config file
+ -p, --purge purge/delete downloaded-IDs database
+
+commands:
+ run qobuz-dl <command> --help for more info
+ (e.g. qobuz-dl fun --help)
+
+ {fun,dl,lucky}
+ fun interactive mode
+ dl input mode
+ lucky lucky mode
+```
+
+## Module usage
+Using `qobuz-dl` as a module is really easy. Basically, the only thing you need is `QobuzDL` from `core`.
+
+```python
+import logging
+from qobuz_dl.core import QobuzDL
+
+logging.basicConfig(level=logging.INFO)
+
+email = "your@email.com"
+password = "your_password"
+
+qobuz = QobuzDL()
+qobuz.get_tokens() # get 'app_id' and 'secrets' attrs
+qobuz.initialize_client(email, password, qobuz.app_id, qobuz.secrets)
+
+qobuz.handle_url("https://play.qobuz.com/album/va4j3hdlwaubc")
+```
+
+Attributes, methods and parameters have been named as self-explanatory as possible.
+
+## A note about Qo-DL
+`qobuz-dl` is inspired in the discontinued Qo-DL-Reborn. This tool uses two modules from Qo-DL: `qopy` and `spoofer`, both written by Sorrow446 and DashLt.
+## Disclaimer
+* This tool was written for educational purposes. I will not be responsible if you use this program in bad faith. By using it, you are accepting the [Qobuz API Terms of Use](https://static.qobuz.com/apps/api/QobuzAPI-TermsofUse.pdf).
+* `qobuz-dl` is not affiliated with Qobuz
+
+
+%prep
+%autosetup -n qobuz-dl-0.9.9.10
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-qobuz-dl -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Fri May 05 2023 Python_Bot <Python_Bot@openeuler.org> - 0.9.9.10-1
+- Package Spec generated