Spotify Scrapper

Spotify has restricted several Web API endpoints for newer apps — editorial playlists, related artists, top tracks and more (see Spotify changes). The free Spotify Scrapper tool brings those endpoints back to RKHM's music automation by using Spotify's unofficial web API. It doesn't replace your official Spotify credentials; it only covers the restricted endpoints.

Research and personal use only
Scraping Spotify is against Spotify's terms of use. Using this tool is only legal for research purposes and personal use; don't use it to run a public or commercial service. You are responsible for the laws that apply to you and your server.

Setting it up

  1. Install Spotify Scrapper from Setting → Tools (Tool Manager).
  2. Open Modules → Scrappers → Spotify Scrapper and tick Active.
  3. Optionally enter a Proxy in type://user:pass@ip:port format (for example socks5://john:abc123@192.168.1.5:8080) so requests to Spotify use the proxy's address instead of your server's.
  4. Your music cronjobs now offer Get related artists and Get top tracks for Spotify artist jobs — see Music automation.

Requirements

The tool is free, but each request uses Busyowl's servers, so it only works while your RKHM license has active support (every license includes support for the first 6 months). Renew support from My Licenses or on CodeCanyon.

How it works

  1. RKHM needs restricted data, such as an artist's top tracks.
  2. The tool asks Busyowl's API server for access keys, passing your proxy details if you set one.
  3. Our server opens Spotify in a headless browser (Puppeteer), through your proxy, and extracts the security tokens, headers and cookies Spotify's own web player uses.
  4. Those keys are sent back to your server, where they stay valid for 1–2 hours.
  5. Your server then calls Spotify's unofficial API directly with those keys (and your proxy).

Spotify's unofficial API is protected by rotating hashes, tokens and sessions, so a simple PHP scraper — like our YouTube and SoundCloud scrapers — can't use it reliably. Running the browser automation on our servers means you don't need Node.js, Chrome or Puppeteer on yours, and we keep it working when Spotify changes its defences. That browser work has a real cost per request, which is why the tool needs active support.