Music swiss knife, new gen.
Project description
========
MusicBot
========
+---------------+-----------------+
| Tools | Result |
+===============+=================+
| Codacy | |codacy| |
+---------------+-----------------+
| Coverage | |coverage| |
+---------------+-----------------+
.. |codacy| image:: https://api.codacy.com/project/badge/Grade/621acf3309b24c538c40824f9af467de
:target: https://www.codacy.com/app/AdrienPensart/musicbot?utm_source=github.com&utm_medium=referral&utm_content=AdrienPensart/musicbot&utm_campaign=Badge_Grade
:alt: Codacy badge
.. |coverage| image:: https://github.com/AdrienPensart/musicbot/blob/master/doc/coverage.svg
:alt: Coverage badge
Description
-----------
CLI / API / Website to manipulate music and create smart playlists, and play it !
Installation
------------
.. code-block:: bash
git clone https://github.com/AdrienPensart/musicbot.git
cd musicbot
python-3.6 -m venv env
source env/bin/activate
pip install -r requirements.txt
Commands
--------
.. code-block::
Usage: musicbot [OPTIONS] COMMAND [ARGS]...
Music swiss knife, new gen.
Options:
--version Show the version and exit.
--log PATH Log file path [default:
/var/log/musicbot.log]
--debug Be very verbose, same as --verbosity debug +
hide progress bars
--timings Set verbosity to info and show execution
timings
--verbosity [debug|info|warning|error|critical]
Verbosity levels [default: warning]
--dry Take no real action
--quiet Disable progress bars
--no-colors Disable colorized output
-h, --help Show this message and exit.
Commands:
completion Completion tool
config Config management
consistency Inconsistencies management
db Database management
file Music tags management
folder Folder scanning
help Print help
playlist Playlist management
repl Start an interactive shell.
server API Server
stats Youtube management
tag Music tags management
task Task management
youtube Youtube management
musicbot completion
*******************
.. code-block::
Usage: musicbot completion [OPTIONS] COMMAND [ARGS]...
Completion tool
Options:
-h, --help Show this message and exit.
Commands:
help Print help
install Install the click-completion-command...
show Show the click-completion-command completion...
musicbot completion help
************************
.. code-block::
Usage: musicbot completion help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot completion install
***************************
.. code-block::
Usage: musicbot completion install [OPTIONS] [SHELL] [PATH]
Install the click-completion-command completion
Options:
--append / --overwrite Append the completion code to the file
-i, --case-insensitive / --no-case-insensitive
Case insensitive completion
-h, --help Show this message and exit.
musicbot completion show
************************
.. code-block::
Usage: musicbot completion show [OPTIONS] [SHELL]
Show the click-completion-command completion code
Options:
-i, --case-insensitive / --no-case-insensitive
Case insensitive completion
-h, --help Show this message and exit.
musicbot config
***************
.. code-block::
Usage: musicbot config [OPTIONS] COMMAND [ARGS]...
Config management
Options:
-h, --help Show this message and exit.
Commands:
help Print help
logging Show loggers tree
save Save config
show Print default config
musicbot config help
********************
.. code-block::
Usage: musicbot config help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot config logging
***********************
.. code-block::
Usage: musicbot config logging [OPTIONS]
Show loggers tree
Options:
-h, --help Show this message and exit.
musicbot config save
********************
.. code-block::
Usage: musicbot config save [OPTIONS]
Save config
Options:
--redis-address TEXT Redis URI [default: redis://localhost]
--redis-db INTEGER Redis index DB [default: 0]
--redis-password TEXT Redis password
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
--http-host TEXT Host interface to listen on [default: 127.0.0.1]
--http-server TEXT Server name to use in links [default: musicbot.ovh]
--http-port INTEGER HTTP port to listen on [default: 8000]
--http-workers INTEGER Number of HTTP workers (not tested) [default: 1]
--http-user TEXT HTTP Basic auth user [default: musicbot]
--http-password TEXT HTTP Basic auth password
-h, --help Show this message and exit.
musicbot config show
********************
.. code-block::
Usage: musicbot config show [OPTIONS]
Print default config
Options:
-h, --help Show this message and exit.
musicbot consistency
********************
.. code-block::
Usage: musicbot consistency [OPTIONS] COMMAND [ARGS]...
Inconsistencies management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
errors Detect errors
help Print help
musicbot consistency errors
***************************
.. code-block::
Usage: musicbot consistency errors [OPTIONS]
Detect errors
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot consistency help
*************************
.. code-block::
Usage: musicbot consistency help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot db
***********
.. code-block::
Usage: musicbot db [OPTIONS] COMMAND [ARGS]...
Database management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
clean Clean deleted musics from database
clear Drop and recreate database and schema
create Create database and load schema
drop Drop database schema
refresh Refresh database materialized views
musicbot db clean
*****************
.. code-block::
Usage: musicbot db clean [OPTIONS]
Clean deleted musics from database
Options:
-h, --help Show this message and exit.
musicbot db clear
*****************
.. code-block::
Usage: musicbot db clear [OPTIONS]
Drop and recreate database and schema
Options:
--yes Are you sure you want to drop the db?
-h, --help Show this message and exit.
musicbot db create
******************
.. code-block::
Usage: musicbot db create [OPTIONS]
Create database and load schema
Options:
-h, --help Show this message and exit.
musicbot db drop
****************
.. code-block::
Usage: musicbot db drop [OPTIONS]
Drop database schema
Options:
--yes Are you sure you want to drop the db?
-h, --help Show this message and exit.
musicbot db refresh
*******************
.. code-block::
Usage: musicbot db refresh [OPTIONS]
Refresh database materialized views
Options:
-h, --help Show this message and exit.
musicbot file
*************
.. code-block::
Usage: musicbot file [OPTIONS] COMMAND [ARGS]...
Music tags management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
help Print help
show Show tags of musics with filters
update
musicbot file help
******************
.. code-block::
Usage: musicbot file help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot file show
******************
.. code-block::
Usage: musicbot file show [OPTIONS]
Show tags of musics with filters
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot file update
********************
.. code-block::
Usage: musicbot file update [OPTIONS]
Options:
--keywords TEXT Keywords
--artist TEXT Artist
--album TEXT Album
--title TEXT Title
--genre TEXT Genre
--number TEXT Track number
--rating TEXT Rating
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot folder
***************
.. code-block::
Usage: musicbot folder [OPTIONS] COMMAND [ARGS]...
Folder scanning
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
find Only list files in selected folders
flac2mp3 Convert all files in folders to mp3
help Print help
list List existing folders
new Add a new folder in database
rescan Rescan all folders registered in database
scan Load musics files in database
sync Copy selected musics with filters to...
watch Watch files changes in folders
musicbot folder find
********************
.. code-block::
Usage: musicbot folder find [OPTIONS] [FOLDERS]...
Only list files in selected folders
Options:
-h, --help Show this message and exit.
musicbot folder flac2mp3
************************
.. code-block::
Usage: musicbot folder flac2mp3 [OPTIONS] [FOLDERS]...
Convert all files in folders to mp3
Options:
--concurrency INTEGER Number of coroutines [default: 8]
-h, --help Show this message and exit.
musicbot folder help
********************
.. code-block::
Usage: musicbot folder help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot folder list
********************
.. code-block::
Usage: musicbot folder list [OPTIONS]
List existing folders
Options:
-h, --help Show this message and exit.
musicbot folder new
*******************
.. code-block::
Usage: musicbot folder new [OPTIONS] [FOLDERS]...
Add a new folder in database
Options:
-h, --help Show this message and exit.
musicbot folder rescan
**********************
.. code-block::
Usage: musicbot folder rescan [OPTIONS]
Rescan all folders registered in database
Options:
--crawl Crawl youtube
-h, --help Show this message and exit.
musicbot folder scan
********************
.. code-block::
Usage: musicbot folder scan [OPTIONS] [FOLDERS]...
Load musics files in database
Options:
--crawl Crawl youtube
-h, --help Show this message and exit.
musicbot folder sync
********************
.. code-block::
Usage: musicbot folder sync [OPTIONS] DESTINATION
Copy selected musics with filters to destination folder
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot folder watch
*********************
.. code-block::
Usage: musicbot folder watch [OPTIONS]
Watch files changes in folders
Options:
-h, --help Show this message and exit.
musicbot help
*************
.. code-block::
Usage: musicbot help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot playlist
*****************
.. code-block::
Usage: musicbot playlist [OPTIONS] COMMAND [ARGS]...
Playlist management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
bests Generate bests playlists with some rules
help Print help
new Generate a new playlist
musicbot playlist bests
***********************
.. code-block::
Usage: musicbot playlist bests [OPTIONS] PATH
Generate bests playlists with some rules
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
--prefix TEXT Append prefix before each path (implies relative)
--suffix TEXT Append this suffix to playlist name
-h, --help Show this message and exit.
musicbot playlist help
**********************
.. code-block::
Usage: musicbot playlist help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot playlist new
*********************
.. code-block::
Usage: musicbot playlist new [OPTIONS] [PATH]
Generate a new playlist
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot repl
*************
.. code-block::
Usage: musicbot repl [OPTIONS]
Start an interactive shell. All subcommands are available in it.
:param old_ctx: The current Click context. :param prompt_kwargs:
Parameters passed to :py:func:`prompt_toolkit.shortcuts.prompt`.
If stdin is not a TTY, no prompt will be printed, but only commands read
from stdin.
Options:
-h, --help Show this message and exit.
musicbot server
***************
.. code-block::
Usage: musicbot server [OPTIONS] COMMAND [ARGS]...
API Server
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
help Print help
start Start musicbot web API
musicbot server help
********************
.. code-block::
Usage: musicbot server help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot server start
*********************
.. code-block::
Usage: musicbot server start [OPTIONS]
Start musicbot web API
Options:
--http-host TEXT Host interface to listen on [default: 127.0.0.1]
--http-server TEXT Server name to use in links [default: musicbot.ovh]
--http-port INTEGER HTTP port to listen on [default: 8000]
--http-workers INTEGER Number of HTTP workers (not tested) [default: 1]
--http-user TEXT HTTP Basic auth user [default: musicbot]
--http-password TEXT HTTP Basic auth password
--dev Watch for source file modification
--watcher Watch for music file modification
--autoscan Enable auto scan background job
--server-cache Activate server cache system
--client-cache Activate client cache system
--no-auth Disable authentication system
-h, --help Show this message and exit.
musicbot stats
**************
.. code-block::
Usage: musicbot stats [OPTIONS] COMMAND [ARGS]...
Youtube management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
show Generate some stats for music collection with...
musicbot stats show
*******************
.. code-block::
Usage: musicbot stats show [OPTIONS]
Generate some stats for music collection with filters
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot tag
************
.. code-block::
Usage: musicbot tag [OPTIONS] COMMAND [ARGS]...
Music tags management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
show Show tags of musics with filters
musicbot tag show
*****************
.. code-block::
Usage: musicbot tag show [OPTIONS]
Show tags of musics with filters
Options:
--fields TEXT Show only those fields
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot task
*************
.. code-block::
Usage: musicbot task [OPTIONS] COMMAND [ARGS]...
Task management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
list List tasks in database
new Add a new task in database
musicbot task list
******************
.. code-block::
Usage: musicbot task list [OPTIONS]
List tasks in database
Options:
-h, --help Show this message and exit.
musicbot task new
*****************
.. code-block::
Usage: musicbot task new [OPTIONS] NAME
Add a new task in database
Options:
-h, --help Show this message and exit.
musicbot youtube
****************
.. code-block::
Usage: musicbot youtube [OPTIONS] COMMAND [ARGS]...
Youtube management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
albums Fetch youtube links for each album
musics Fetch youtube links for each music
only Fetch youtube links for each album
musicbot youtube albums
***********************
.. code-block::
Usage: musicbot youtube albums [OPTIONS]
Fetch youtube links for each album
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
--concurrency INTEGER Number of coroutines [default: 8]
--youtube-album TEXT Select albums with a youtube link
-h, --help Show this message and exit.
musicbot youtube musics
***********************
.. code-block::
Usage: musicbot youtube musics [OPTIONS]
Fetch youtube links for each music
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
--concurrency INTEGER Number of coroutines [default: 8]
-h, --help Show this message and exit.
musicbot youtube only
*********************
.. code-block::
Usage: musicbot youtube only [OPTIONS]
Fetch youtube links for each album
Options:
-h, --help Show this message and exit.
MusicBot
========
+---------------+-----------------+
| Tools | Result |
+===============+=================+
| Codacy | |codacy| |
+---------------+-----------------+
| Coverage | |coverage| |
+---------------+-----------------+
.. |codacy| image:: https://api.codacy.com/project/badge/Grade/621acf3309b24c538c40824f9af467de
:target: https://www.codacy.com/app/AdrienPensart/musicbot?utm_source=github.com&utm_medium=referral&utm_content=AdrienPensart/musicbot&utm_campaign=Badge_Grade
:alt: Codacy badge
.. |coverage| image:: https://github.com/AdrienPensart/musicbot/blob/master/doc/coverage.svg
:alt: Coverage badge
Description
-----------
CLI / API / Website to manipulate music and create smart playlists, and play it !
Installation
------------
.. code-block:: bash
git clone https://github.com/AdrienPensart/musicbot.git
cd musicbot
python-3.6 -m venv env
source env/bin/activate
pip install -r requirements.txt
Commands
--------
.. code-block::
Usage: musicbot [OPTIONS] COMMAND [ARGS]...
Music swiss knife, new gen.
Options:
--version Show the version and exit.
--log PATH Log file path [default:
/var/log/musicbot.log]
--debug Be very verbose, same as --verbosity debug +
hide progress bars
--timings Set verbosity to info and show execution
timings
--verbosity [debug|info|warning|error|critical]
Verbosity levels [default: warning]
--dry Take no real action
--quiet Disable progress bars
--no-colors Disable colorized output
-h, --help Show this message and exit.
Commands:
completion Completion tool
config Config management
consistency Inconsistencies management
db Database management
file Music tags management
folder Folder scanning
help Print help
playlist Playlist management
repl Start an interactive shell.
server API Server
stats Youtube management
tag Music tags management
task Task management
youtube Youtube management
musicbot completion
*******************
.. code-block::
Usage: musicbot completion [OPTIONS] COMMAND [ARGS]...
Completion tool
Options:
-h, --help Show this message and exit.
Commands:
help Print help
install Install the click-completion-command...
show Show the click-completion-command completion...
musicbot completion help
************************
.. code-block::
Usage: musicbot completion help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot completion install
***************************
.. code-block::
Usage: musicbot completion install [OPTIONS] [SHELL] [PATH]
Install the click-completion-command completion
Options:
--append / --overwrite Append the completion code to the file
-i, --case-insensitive / --no-case-insensitive
Case insensitive completion
-h, --help Show this message and exit.
musicbot completion show
************************
.. code-block::
Usage: musicbot completion show [OPTIONS] [SHELL]
Show the click-completion-command completion code
Options:
-i, --case-insensitive / --no-case-insensitive
Case insensitive completion
-h, --help Show this message and exit.
musicbot config
***************
.. code-block::
Usage: musicbot config [OPTIONS] COMMAND [ARGS]...
Config management
Options:
-h, --help Show this message and exit.
Commands:
help Print help
logging Show loggers tree
save Save config
show Print default config
musicbot config help
********************
.. code-block::
Usage: musicbot config help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot config logging
***********************
.. code-block::
Usage: musicbot config logging [OPTIONS]
Show loggers tree
Options:
-h, --help Show this message and exit.
musicbot config save
********************
.. code-block::
Usage: musicbot config save [OPTIONS]
Save config
Options:
--redis-address TEXT Redis URI [default: redis://localhost]
--redis-db INTEGER Redis index DB [default: 0]
--redis-password TEXT Redis password
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
--http-host TEXT Host interface to listen on [default: 127.0.0.1]
--http-server TEXT Server name to use in links [default: musicbot.ovh]
--http-port INTEGER HTTP port to listen on [default: 8000]
--http-workers INTEGER Number of HTTP workers (not tested) [default: 1]
--http-user TEXT HTTP Basic auth user [default: musicbot]
--http-password TEXT HTTP Basic auth password
-h, --help Show this message and exit.
musicbot config show
********************
.. code-block::
Usage: musicbot config show [OPTIONS]
Print default config
Options:
-h, --help Show this message and exit.
musicbot consistency
********************
.. code-block::
Usage: musicbot consistency [OPTIONS] COMMAND [ARGS]...
Inconsistencies management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
errors Detect errors
help Print help
musicbot consistency errors
***************************
.. code-block::
Usage: musicbot consistency errors [OPTIONS]
Detect errors
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot consistency help
*************************
.. code-block::
Usage: musicbot consistency help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot db
***********
.. code-block::
Usage: musicbot db [OPTIONS] COMMAND [ARGS]...
Database management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
clean Clean deleted musics from database
clear Drop and recreate database and schema
create Create database and load schema
drop Drop database schema
refresh Refresh database materialized views
musicbot db clean
*****************
.. code-block::
Usage: musicbot db clean [OPTIONS]
Clean deleted musics from database
Options:
-h, --help Show this message and exit.
musicbot db clear
*****************
.. code-block::
Usage: musicbot db clear [OPTIONS]
Drop and recreate database and schema
Options:
--yes Are you sure you want to drop the db?
-h, --help Show this message and exit.
musicbot db create
******************
.. code-block::
Usage: musicbot db create [OPTIONS]
Create database and load schema
Options:
-h, --help Show this message and exit.
musicbot db drop
****************
.. code-block::
Usage: musicbot db drop [OPTIONS]
Drop database schema
Options:
--yes Are you sure you want to drop the db?
-h, --help Show this message and exit.
musicbot db refresh
*******************
.. code-block::
Usage: musicbot db refresh [OPTIONS]
Refresh database materialized views
Options:
-h, --help Show this message and exit.
musicbot file
*************
.. code-block::
Usage: musicbot file [OPTIONS] COMMAND [ARGS]...
Music tags management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
help Print help
show Show tags of musics with filters
update
musicbot file help
******************
.. code-block::
Usage: musicbot file help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot file show
******************
.. code-block::
Usage: musicbot file show [OPTIONS]
Show tags of musics with filters
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot file update
********************
.. code-block::
Usage: musicbot file update [OPTIONS]
Options:
--keywords TEXT Keywords
--artist TEXT Artist
--album TEXT Album
--title TEXT Title
--genre TEXT Genre
--number TEXT Track number
--rating TEXT Rating
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot folder
***************
.. code-block::
Usage: musicbot folder [OPTIONS] COMMAND [ARGS]...
Folder scanning
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
find Only list files in selected folders
flac2mp3 Convert all files in folders to mp3
help Print help
list List existing folders
new Add a new folder in database
rescan Rescan all folders registered in database
scan Load musics files in database
sync Copy selected musics with filters to...
watch Watch files changes in folders
musicbot folder find
********************
.. code-block::
Usage: musicbot folder find [OPTIONS] [FOLDERS]...
Only list files in selected folders
Options:
-h, --help Show this message and exit.
musicbot folder flac2mp3
************************
.. code-block::
Usage: musicbot folder flac2mp3 [OPTIONS] [FOLDERS]...
Convert all files in folders to mp3
Options:
--concurrency INTEGER Number of coroutines [default: 8]
-h, --help Show this message and exit.
musicbot folder help
********************
.. code-block::
Usage: musicbot folder help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot folder list
********************
.. code-block::
Usage: musicbot folder list [OPTIONS]
List existing folders
Options:
-h, --help Show this message and exit.
musicbot folder new
*******************
.. code-block::
Usage: musicbot folder new [OPTIONS] [FOLDERS]...
Add a new folder in database
Options:
-h, --help Show this message and exit.
musicbot folder rescan
**********************
.. code-block::
Usage: musicbot folder rescan [OPTIONS]
Rescan all folders registered in database
Options:
--crawl Crawl youtube
-h, --help Show this message and exit.
musicbot folder scan
********************
.. code-block::
Usage: musicbot folder scan [OPTIONS] [FOLDERS]...
Load musics files in database
Options:
--crawl Crawl youtube
-h, --help Show this message and exit.
musicbot folder sync
********************
.. code-block::
Usage: musicbot folder sync [OPTIONS] DESTINATION
Copy selected musics with filters to destination folder
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot folder watch
*********************
.. code-block::
Usage: musicbot folder watch [OPTIONS]
Watch files changes in folders
Options:
-h, --help Show this message and exit.
musicbot help
*************
.. code-block::
Usage: musicbot help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot playlist
*****************
.. code-block::
Usage: musicbot playlist [OPTIONS] COMMAND [ARGS]...
Playlist management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
bests Generate bests playlists with some rules
help Print help
new Generate a new playlist
musicbot playlist bests
***********************
.. code-block::
Usage: musicbot playlist bests [OPTIONS] PATH
Generate bests playlists with some rules
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
--prefix TEXT Append prefix before each path (implies relative)
--suffix TEXT Append this suffix to playlist name
-h, --help Show this message and exit.
musicbot playlist help
**********************
.. code-block::
Usage: musicbot playlist help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot playlist new
*********************
.. code-block::
Usage: musicbot playlist new [OPTIONS] [PATH]
Generate a new playlist
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot repl
*************
.. code-block::
Usage: musicbot repl [OPTIONS]
Start an interactive shell. All subcommands are available in it.
:param old_ctx: The current Click context. :param prompt_kwargs:
Parameters passed to :py:func:`prompt_toolkit.shortcuts.prompt`.
If stdin is not a TTY, no prompt will be printed, but only commands read
from stdin.
Options:
-h, --help Show this message and exit.
musicbot server
***************
.. code-block::
Usage: musicbot server [OPTIONS] COMMAND [ARGS]...
API Server
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
help Print help
start Start musicbot web API
musicbot server help
********************
.. code-block::
Usage: musicbot server help [OPTIONS] [COMMAND]...
Print help
Options:
-h, --help Show this message and exit.
musicbot server start
*********************
.. code-block::
Usage: musicbot server start [OPTIONS]
Start musicbot web API
Options:
--http-host TEXT Host interface to listen on [default: 127.0.0.1]
--http-server TEXT Server name to use in links [default: musicbot.ovh]
--http-port INTEGER HTTP port to listen on [default: 8000]
--http-workers INTEGER Number of HTTP workers (not tested) [default: 1]
--http-user TEXT HTTP Basic auth user [default: musicbot]
--http-password TEXT HTTP Basic auth password
--dev Watch for source file modification
--watcher Watch for music file modification
--autoscan Enable auto scan background job
--server-cache Activate server cache system
--client-cache Activate client cache system
--no-auth Disable authentication system
-h, --help Show this message and exit.
musicbot stats
**************
.. code-block::
Usage: musicbot stats [OPTIONS] COMMAND [ARGS]...
Youtube management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
show Generate some stats for music collection with...
musicbot stats show
*******************
.. code-block::
Usage: musicbot stats show [OPTIONS]
Generate some stats for music collection with filters
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot tag
************
.. code-block::
Usage: musicbot tag [OPTIONS] COMMAND [ARGS]...
Music tags management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
show Show tags of musics with filters
musicbot tag show
*****************
.. code-block::
Usage: musicbot tag show [OPTIONS]
Show tags of musics with filters
Options:
--fields TEXT Show only those fields
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
-h, --help Show this message and exit.
musicbot task
*************
.. code-block::
Usage: musicbot task [OPTIONS] COMMAND [ARGS]...
Task management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
list List tasks in database
new Add a new task in database
musicbot task list
******************
.. code-block::
Usage: musicbot task list [OPTIONS]
List tasks in database
Options:
-h, --help Show this message and exit.
musicbot task new
*****************
.. code-block::
Usage: musicbot task new [OPTIONS] NAME
Add a new task in database
Options:
-h, --help Show this message and exit.
musicbot youtube
****************
.. code-block::
Usage: musicbot youtube [OPTIONS] COMMAND [ARGS]...
Youtube management
Options:
--db-host TEXT DB host [default: localhost]
--db-port INTEGER DB port [default: 5432]
--db-database TEXT DB name [default: musicbot_prod]
--db-user TEXT DB user [default: postgres]
--db-password TEXT DB password
-h, --help Show this message and exit.
Commands:
albums Fetch youtube links for each album
musics Fetch youtube links for each music
only Fetch youtube links for each album
musicbot youtube albums
***********************
.. code-block::
Usage: musicbot youtube albums [OPTIONS]
Fetch youtube links for each album
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
--concurrency INTEGER Number of coroutines [default: 8]
--youtube-album TEXT Select albums with a youtube link
-h, --help Show this message and exit.
musicbot youtube musics
***********************
.. code-block::
Usage: musicbot youtube musics [OPTIONS]
Fetch youtube links for each music
Options:
--limit INTEGER Fetch a maximum limit of music
--youtubes TEXT Select musics with a youtube link
--no-youtubes TEXT Select musics without youtube link
--formats TEXT Select musics with file format
--no-formats TEXT Filter musics without format
--keywords TEXT Select musics with keywords
--no-keywords TEXT Filter musics without keywords
--artists TEXT Select musics with artists
--no-artists TEXT Filter musics without artists
--albums TEXT Select musics with albums
--no-albums TEXT Filter musics without albums
--titles TEXT Select musics with titles
--no-titles TEXT Filter musics without titless
--genres TEXT Select musics with genres
--no-genres TEXT Filter musics without genres
--min-duration INTEGER Minimum duration filter (hours:minutes:seconds)
--max-duration INTEGER Maximum duration filter (hours:minutes:seconds))
--min-size INTEGER Minimum file size filter (in bytes)
--max-size INTEGER Maximum file size filter (in bytes)
--min-rating FLOAT Minimum rating [default: 0.0]
--max-rating FLOAT Maximum rating [default: 5.0]
--relative Generate relatives paths
--shuffle Randomize selection
--concurrency INTEGER Number of coroutines [default: 8]
-h, --help Show this message and exit.
musicbot youtube only
*********************
.. code-block::
Usage: musicbot youtube only [OPTIONS]
Fetch youtube links for each album
Options:
-h, --help Show this message and exit.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
musicbot-0.0.1.tar.gz
(42.4 kB
view hashes)
Built Distribution
musicbot-0.0.1-py3-none-any.whl
(148.1 kB
view hashes)