IMSLP Scraper - Free Sheet Music & Scores
Pricing
from $5.00 / 1,000 results
IMSLP Scraper - Free Sheet Music & Scores
Scrape free sheet music from IMSLP.org (Petrucci Music Library). Search 700K+ public domain scores by composer or work. Get titles, keys, opus numbers, instrumentation, and file counts.
Pricing
from $5.00 / 1,000 results
Rating
0.0
(0)
Developer
lulz bot
Actor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
IMSLP Sheet Music Scraper
Scrape free public domain sheet music from IMSLP (International Music Score Library Project / Petrucci Music Library) — the largest collection of free sheet music in the world with 200,000+ works.
What it does
Search by composer name or work title to get structured metadata for classical music scores:
- Title & Composer — Parsed from IMSLP's canonical format
- Opus/Catalogue Numbers — Op., WoO, BWV, K., RV, D., HWV, Hob., etc.
- Key — Musical key (e.g. "C-sharp minor")
- Instrumentation — e.g. "piano", "orchestra", "string quartet"
- Genre/Style — Classical, Romantic, Baroque, etc.
- Year of Composition
- Movements — Parsed movement list
- Edition Count — Number of available PDF editions
- PDF URLs — Direct links to downloadable score PDFs
- Source URL — Link back to the IMSLP work page
Input
| Parameter | Type | Default | Description |
|---|---|---|---|
searchQueries | string[] | ["Beethoven"] | Composer names or work titles |
maxListings | integer | 50 | Max works to return (1-1000) |
scrapeDetails | boolean | false | Visit work pages for full metadata |
proxyConfiguration | object | — | Optional proxy settings |
Search modes
- Composer search (e.g. "Beethoven", "Bach") — Lists all works in that composer's category
- Work search (e.g. "Moonlight Sonata", "Clair de Lune") — Searches across all works
Detail scraping
With scrapeDetails: false (default), you get title, composer, opus number, and source URL — fast and lightweight.
With scrapeDetails: true, each work page is visited to extract key, instrumentation, genre, year, movements, PDF links, and edition counts. This is slower but provides rich metadata.
Output example
{"title": "Piano Sonata No.14, Op.27 No.2","composer": "Beethoven, Ludwig van","opusNumber": "Op.27 No.2","key": "C-sharp minor","instrumentation": "piano","genre": "Classical","year": "1802","movements": ["Adagio sostenuto", "Allegretto - Trio", "Presto agitato"],"editions": 85,"pdfUrls": ["https://imslp.org/images/..."],"sourceUrl": "https://imslp.org/wiki/Piano_Sonata_No.14,_Op.27_No.2_(Beethoven,_Ludwig_van)","scrapedAt": "2026-04-26T12:00:00.000Z"}
Use cases
- Music researchers — Catalog and analyze classical music metadata at scale
- Music educators — Find free sheet music for teaching
- App developers — Build music discovery tools with structured data
- Digital humanities — Analyze composers, genres, and time periods
- Performers — Discover available editions of specific works
Technical notes
- Uses IMSLP's MediaWiki API for fast, reliable search and category listing
- Individual work pages are scraped with Cheerio for full metadata
- Respects rate limits with built-in delays when scraping details
- All sheet music on IMSLP is public domain or Creative Commons licensed