Skip to main content

musdl: Pure Python score downloader for

Project description

musdl

logo

NOTE:

The author of musdl does NOT condone piracy in any way, and is not responsible for anything that happens as a result of piracy arising from the use of musdl.

musdl (Musescore Downloader) is a Python script that I wrote to make it easier to download scores from Musescore. It is meant to be used as a command-line tool, but can also be imported and used as a module:

from musdl import Score

my_score = Score(...)  # the Musescore url goes here
data = my_score.download("mp3")  # download as mp3, returns as bytes

Why?

See the original Javascript version for more infomation.

takedown request something something

Take a look at this issue in the (same) Javascript downloader repo.

Requirements

  • requests - Downloader.
  • beautifulsoup4 - Powerful HTML parser.
  • fpdf - Create pdfs
  • imagemagick - Convert svgs to pngs.

Hacking

All my python projects now use flit to build and publish. So you need to python3 -m pip install flit first.

git clone https://github.com/onyxware/musdl
cd musdl
flit build

Install

(python3 -m) pip install musdl If you want to download PDFs, install ImageMagick first. On Linux distributions, you can just install using your package manager, i.e

apt install imagemagick

PDF support has been tested on Termux as well, but not Windows yet. (It should work.)

License

MIT.

Changelog

2.1.1

Added PDF support.

2.0.0

Added -O option to use the score's title as the output filename (y'know, like curl -O). Refactored code to be object-oriented, in the form of the Score class. This should make adding new features easier. (Plus, you can use musdl more programmatically!)

1.1.2

Version bump, use Flit to build instead of setup.py. Updated README too.

1.1.0

Added MusicXML download option, thanks to JPFrancoia for the update!

1.0.0

Initial version.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

musdl-2.1.2.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

musdl-2.1.2-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file musdl-2.1.2.tar.gz.

File metadata

  • Download URL: musdl-2.1.2.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.24.0

File hashes

Hashes for musdl-2.1.2.tar.gz
Algorithm Hash digest
SHA256 7afa4be5ee35848006826c2ca3915dc065de856ed41a09a003c10663c3f30f02
MD5 dedb6aadea5da6b57dc119184139af46
BLAKE2b-256 0cf64cbc347357ec7c0065a0d9ed49aefeb026a9e031ae2c7396fce40dcc053c

See more details on using hashes here.

File details

Details for the file musdl-2.1.2-py3-none-any.whl.

File metadata

  • Download URL: musdl-2.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.24.0

File hashes

Hashes for musdl-2.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 511138b00ed149266b37f21fa1f8d8f287ef8b05fab906b4645cc9f130f0ff55
MD5 653bf71765dd84db82e9eb2c3cbc5718
BLAKE2b-256 b7d1c23f0d797f9f8e1999893d78d5000e85d10f863071bfab23a3b460f29105

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page