Skip to main content

Mass clean metadata of downloaded MP3 songs.

I wrote the initial version as a simple script that just worked. This tool later became an exercise in command line application design as I’d never done it before. It uses docopt (along with some hackery to allow sub-commands)

install

pip install tagtool

You could also use `pipsi <https://github.com/mitsuhiko/pipsi>`__ to install.

usage

Usage:
    tagtool [--no-skip] <command> [<args>...]

Commands:
    replace     Perform regex replace on tags
    remove      Remove tag frames
    rename      Rename files to format: "%TrackTitle%.mp3"
    help        Read about a specific command

Options:
    --no-skip   Do not skip already tagged files

commands

``replace``

Perform regex replace on tags like artist name, track title etc.

Usage:
    tagtool replace --pattern=<pattern> [--repl=<replacement>] <file>...
                    [--prune] [--frames=<tags>] [--frames_skip=<tags>]

Options:
    <file>                       MP3 file(s) to process
    --pattern=<pattern>          Pattern to search for
    --repl=<replacement>         Replacement text
    --prune                      Remove empty frames
    --frames=<frames>            Comma separated list of frames to
                                 restrict replacement to
    --frames_skip=<frames>       Comma separated list of frames to skip

Examples:
    tagtool replace --pattern='\s+\d+\s+' --repl='' --prune SomeSong.mp3 --frames_skip=TOPE,TIT2

``remove``

Remove tag frames.

Usage:
    tagtool remove  --frames=<tags> <file>...
                    [--prefix]

Options:
    <file>                       MP3 file(s) to process
    --frames=<frames>            Comma separated list of frames to remove
    --prefix                     Consider the list of frames as prefixes

Examples:
    tagtool remove --frames=APIC,COMM,USLT *.mp3

``rename``

Rename a file with it's track title.

Usage:
    tagtool rename <file>...

Options:
    <file>                       MP3 file(s) to process

Examples:
    tagtool rename *.mp3

tagfix

Tagfix is a script that uses the available tagtool commands as building blocks and performs multiple cleaning operation on files in one pass. If you download music from sites like songspk, djmaza etc. then this script is for you. It removes all mention of these websites from the tags.

Release files for tagtool 1.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tagtool 1.0.7
File Size Uploaded
tagtool-1.0.7.tar.gz 4.6 kB Details

Release files / tagtool-1.0.7.tar.gz

Download URL tagtool-1.0.7.tar.gz
Size 4.6 kB
Tags Source
SHA-256 checksum
How to use checksums
5ed36dbe84f62e9e4384c6eae5102e18993c94f6a6424e33d65df4b4b92d2fd6
BLAKE2b-256 checksum
How to use checksums
f769343b5afae64bc953f09389187be86fc3b5e139d84872e7f1ebf8007ec9c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

1.0.7 This release

1 release file

1.0.6

1 release file

1.0.5

1 release file

1.0.4

1 release file

1.0.3

1 release file

1.0.2

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page