2

I would like to download the radio station playlists available for free (LQ) by www.di.fm and www.sky.fm, because they offer no web/desktop app! But I don't always use my iPhone or Android tablet and their website navigation is way too cumbersome.

Is there a quick way to download all their stations *.pls?

I want to add them to my internet radio playlist (foobar). The only solution I found is this "hack", but I don't even understand what it says, i.e. where I place those scripts so that they do what they are intended to do.

I would highly appreciate your help in using the above scripts or find another way. Maybe someone of you already made himself the work and can upload the playlist file here. (It doesn't matter for me if sky.fm and di.fm are separated or in one file.)

5 Answers 5

0

DI.fm allows you to download as .pls.

As for Sky.fm, you will have to manually download the files by entering this URL: listen.sky.fm/public3/STATIONNAME.pls.

For example: listen.sky.fm/public3/dreamscapes.pls

2
  • My intention was to indeed download all playlists at once and without having to figure out the station name. So while this helps if I am willing to invest the time, it isn't what I am looking for. You can call me lazy. Commented May 17, 2012 at 11:21
  • 1
    This does not answer the question at all. How exactly can i download all stations playlist from di.fm? Commented Sep 24, 2012 at 19:29
1

  1. Save the following text in a .pls file.
  2. Edit with notepad to replace the text YOUR_KEY by your premium key or delete it if you are not premium.
  3. Open the pls file in your favorite player :)

    [playlist]
    NumberOfEntries=70
    File1=http://listen.di.fm/premium_high/trance.pls?YOUR_KEY
    Title1=Digitally Imported - trance
    Length1=-1
    File2=http://listen.di.fm/premium_high/vocaltrance.pls?YOUR_KEY
    Title2=Digitally Imported - vocaltrance
    Length2=-1
    File3=http://listen.di.fm/premium_high/ambient.pls?YOUR_KEY
    Title3=Digitally Imported - ambient
    Length3=-1
    File4=http://listen.di.fm/premium_high/bigroomhouse.pls?YOUR_KEY
    Title4=Digitally Imported - bigroomhouse
    Length4=-1
    File5=http://listen.di.fm/premium_high/breaks.pls?YOUR_KEY
    Title5=Digitally Imported - breaks
    Length5=-1
    File6=http://listen.di.fm/premium_high/chillhop.pls?YOUR_KEY
    Title6=Digitally Imported - chillhop
    Length6=-1
    File7=http://listen.di.fm/premium_high/chillout.pls?YOUR_KEY
    Title7=Digitally Imported - chillout
    Length7=-1
    File8=http://listen.di.fm/premium_high/chilloutdreams.pls?YOUR_KEY
    Title8=Digitally Imported - chilloutdreams
    Length8=-1
    File9=http://listen.di.fm/premium_high/chillstep.pls?YOUR_KEY
    Title9=Digitally Imported - chillstep
    Length9=-1
    File10=http://listen.di.fm/premium_high/chiptunes.pls?YOUR_KEY
    Title10=Digitally Imported - chiptunes
    Length10=-1
    File11=http://listen.di.fm/premium_high/classiceurodance.pls?YOUR_KEY
    Title11=Digitally Imported - classiceurodance
    Length11=-1
    File12=http://listen.di.fm/premium_high/classiceurodisco.pls?YOUR_KEY
    Title12=Digitally Imported - classiceurodisco
    Length12=-1
    File13=http://listen.di.fm/premium_high/classictrance.pls?YOUR_KEY
    Title13=Digitally Imported - classictrance
    Length13=-1
    File14=http://listen.di.fm/premium_high/classicvocaltrance.pls?YOUR_KEY
    Title14=Digitally Imported - classicvocaltrance
    Length14=-1
    File15=http://listen.di.fm/premium_high/clubdubstep.pls?YOUR_KEY
    Title15=Digitally Imported - clubdubstep
    Length15=-1
    File16=http://listen.di.fm/premium_high/club.pls?YOUR_KEY
    Title16=Digitally Imported - club
    Length16=-1
    File17=http://listen.di.fm/premium_high/cosmicdowntempo.pls?YOUR_KEY
    Title17=Digitally Imported - cosmicdowntempo
    Length17=-1
    File18=http://listen.di.fm/premium_high/djmixes.pls?YOUR_KEY
    Title18=Digitally Imported - djmixes
    Length18=-1
    File19=http://listen.di.fm/premium_high/darkdnb.pls?YOUR_KEY
    Title19=Digitally Imported - darkdnb
    Length19=-1
    File20=http://listen.di.fm/premium_high/deephouse.pls?YOUR_KEY
    Title20=Digitally Imported - deephouse
    Length20=-1
    File21=http://listen.di.fm/premium_high/deepnudisco.pls?YOUR_KEY
    Title21=Digitally Imported - deepnudisco
    Length21=-1
    File22=http://listen.di.fm/premium_high/deeptech.pls?YOUR_KEY
    Title22=Digitally Imported - deeptech
    Length22=-1
    File23=http://listen.di.fm/premium_high/discohouse.pls?YOUR_KEY
    Title23=Digitally Imported - discohouse
    Length23=-1
    File24=http://listen.di.fm/premium_high/downtempolounge.pls?YOUR_KEY
    Title24=Digitally Imported - downtempolounge
    Length24=-1
    File25=http://listen.di.fm/premium_high/drumandbass.pls?YOUR_KEY
    Title25=Digitally Imported - drumandbass
    Length25=-1
    File26=http://listen.di.fm/premium_high/dubstep.pls?YOUR_KEY
    Title26=Digitally Imported - dubstep
    Length26=-1
    File27=http://listen.di.fm/premium_high/eclectronica.pls?YOUR_KEY
    Title27=Digitally Imported - eclectronica
    Length27=-1
    File28=http://listen.di.fm/premium_high/electro.pls?YOUR_KEY
    Title28=Digitally Imported - electro
    Length28=-1
    File29=http://listen.di.fm/premium_high/electronicpioneers.pls?YOUR_KEY
    Title29=Digitally Imported - electronicpioneers
    Length29=-1
    File30=http://listen.di.fm/premium_high/electropop.pls?YOUR_KEY
    Title30=Digitally Imported - electropop
    Length30=-1
    File31=http://listen.di.fm/premium_high/epictrance.pls?YOUR_KEY
    Title31=Digitally Imported - epictrance
    Length31=-1
    File32=http://listen.di.fm/premium_high/eurodance.pls?YOUR_KEY
    Title32=Digitally Imported - eurodance
    Length32=-1
    File33=http://listen.di.fm/premium_high/funkyhouse.pls?YOUR_KEY
    Title33=Digitally Imported - funkyhouse
    Length33=-1
    File34=http://listen.di.fm/premium_high/futuresynthpop.pls?YOUR_KEY
    Title34=Digitally Imported - futuresynthpop
    Length34=-1
    File35=http://listen.di.fm/premium_high/gabber.pls?YOUR_KEY
    Title35=Digitally Imported - gabber
    Length35=-1
    File36=http://listen.di.fm/premium_high/glitchhop.pls?YOUR_KEY
    Title36=Digitally Imported - glitchhop
    Length36=-1
    File37=http://listen.di.fm/premium_high/goapsy.pls?YOUR_KEY
    Title37=Digitally Imported - goapsy
    Length37=-1
    File38=http://listen.di.fm/premium_high/handsup.pls?YOUR_KEY
    Title38=Digitally Imported - handsup
    Length38=-1
    File39=http://listen.di.fm/premium_high/harddance.pls?YOUR_KEY
    Title39=Digitally Imported - harddance
    Length39=-1
    File40=http://listen.di.fm/premium_high/hardtechno.pls?YOUR_KEY
    Title40=Digitally Imported - hardtechno
    Length40=-1
    File41=http://listen.di.fm/premium_high/hardcore.pls?YOUR_KEY
    Title41=Digitally Imported - hardcore
    Length41=-1
    File42=http://listen.di.fm/premium_high/hardstyle.pls?YOUR_KEY
    Title42=Digitally Imported - hardstyle
    Length42=-1
    File43=http://listen.di.fm/premium_high/house.pls?YOUR_KEY
    Title43=Digitally Imported - house
    Length43=-1
    File44=http://listen.di.fm/premium_high/latinhouse.pls?YOUR_KEY
    Title44=Digitally Imported - latinhouse
    Length44=-1
    File45=http://listen.di.fm/premium_high/liquiddnb.pls?YOUR_KEY
    Title45=Digitally Imported - liquiddnb
    Length45=-1
    File46=http://listen.di.fm/premium_high/liquiddubstep.pls?YOUR_KEY
    Title46=Digitally Imported - liquiddubstep
    Length46=-1
    File47=http://listen.di.fm/premium_high/lounge.pls?YOUR_KEY
    Title47=Digitally Imported - lounge
    Length47=-1
    File48=http://listen.di.fm/premium_high/mainstage.pls?YOUR_KEY
    Title48=Digitally Imported - mainstage
    Length48=-1
    File49=http://listen.di.fm/premium_high/minimal.pls?YOUR_KEY
    Title49=Digitally Imported - minimal
    Length49=-1
    File50=http://listen.di.fm/premium_high/moombahton.pls?YOUR_KEY
    Title50=Digitally Imported - moombahton
    Length50=-1
    File51=http://listen.di.fm/premium_high/oldschoolacid.pls?YOUR_KEY
    Title51=Digitally Imported - oldschoolacid
    Length51=-1
    File52=http://listen.di.fm/premium_high/classictechno.pls?YOUR_KEY
    Title52=Digitally Imported - classictechno
    Length52=-1
    File53=http://listen.di.fm/premium_high/progressive.pls?YOUR_KEY
    Title53=Digitally Imported - progressive
    Length53=-1
    File54=http://listen.di.fm/premium_high/progressivepsy.pls?YOUR_KEY
    Title54=Digitally Imported - progressivepsy
    Length54=-1
    File55=http://listen.di.fm/premium_high/psychill.pls?YOUR_KEY
    Title55=Digitally Imported - psychill
    Length55=-1
    File56=http://listen.di.fm/premium_high/psybient.pls?YOUR_KEY
    Title56=Digitally Imported - psybient
    Length56=-1
    File57=http://listen.di.fm/premium_high/russianclubhits.pls?YOUR_KEY
    Title57=Digitally Imported - russianclubhits
    Length57=-1
    File58=http://listen.di.fm/premium_high/sankeys.pls?YOUR_KEY
    Title58=Digitally Imported - sankeys
    Length58=-1
    File59=http://listen.di.fm/premium_high/scousehouse.pls?YOUR_KEY
    Title59=Digitally Imported - scousehouse
    Length59=-1
    File60=http://listen.di.fm/premium_high/soulfulhouse.pls?YOUR_KEY
    Title60=Digitally Imported - soulfulhouse
    Length60=-1
    File61=http://listen.di.fm/premium_high/spacemusic.pls?YOUR_KEY
    Title61=Digitally Imported - spacemusic
    Length61=-1
    File62=http://listen.di.fm/premium_high/techhouse.pls?YOUR_KEY
    Title62=Digitally Imported - techhouse
    Length62=-1
    File63=http://listen.di.fm/premium_high/techno.pls?YOUR_KEY
    Title63=Digitally Imported - techno
    Length63=-1
    File64=http://listen.di.fm/premium_high/trap.pls?YOUR_KEY
    Title64=Digitally Imported - trap
    Length64=-1
    File65=http://listen.di.fm/premium_high/tribalhouse.pls?YOUR_KEY
    Title65=Digitally Imported - tribalhouse
    Length65=-1
    File66=http://listen.di.fm/premium_high/ukgarage.pls?YOUR_KEY
    Title66=Digitally Imported - ukgarage
    Length66=-1
    File67=http://listen.di.fm/premium_high/umfradio.pls?YOUR_KEY
    Title67=Digitally Imported - umfradio
    Length67=-1
    File68=http://listen.di.fm/premium_high/undergroundtechno.pls?YOUR_KEY
    Title68=Digitally Imported - undergroundtechno
    Length68=-1
    File69=http://listen.di.fm/premium_high/vocalchillout.pls?YOUR_KEY
    Title69=Digitally Imported - vocalchillout
    Length69=-1
    File70=http://listen.di.fm/premium_high/vocallounge.pls?YOUR_KEY
    Title70=Digitally Imported - vocallounge
    Length70=-1
    version=2

1
  • Replaced dead link with the text directly
    – Cédric V
    Commented Oct 22, 2014 at 20:13
0

My answer was initially the same as above, except I give the link to the di fm radio and not sky radio. The link would be something like this:

http://listen.di.fm/public3/insert_radio_name.pls

And you get radio name by clicking on any of the radios, it will be http://www.di.fm/insert_radio_name so this is the manual way to do it, and not all at once. And I'm not sure if it works for all stations.

It's not 5 clicks per station, it's just 1 hover and 1 click, but even if that sounds like a lot, you can right click on the Stations button and do an Inspect element and expand the submenu and the lists divs. There you can find the names of the stations and you're 1 copy paste away. Ooor, without expanding any further, copy the ul elements, paste them in a txt file and start doing find/replace to turn for instance:

<li data-ga-event="MainNav,channel-dropdown-click,@data-channel-key" data-channel-key="00sclubhits" data-channel-id="324"></li>

into

http://listen.di.fm/public3/00sclubhits.pls

How? First part is easy, notepad is enough, just replace this

<li data-ga-event="MainNav,channel-dropdown-click,@data-channel-key" data-channel-key="

with

http://listen.di.fm/public3/

And for the 2nd part you can google "notepad++ regex" and install notepad++ and come up with:

" data-channel-id="(\d)*"></li>

being replaced with

.pls

Then trim out the ul elements or replace them with empty string. In the end you will have em all in 1 file, like this: http://pastebin.com/V0mPewCq. If you want this done in 1 go, I suggest you pick up Java and do a crawler for the main page in case they change them and you don't want to go through this again.

I have yet to know how to get them all in a playlist or save them all at once from such a file. Either save each manually (you can use this http://www.urlopener.com/home.html if you don't want to paste each in a tab, but you still have to click Save As... ) or again automated with some script (I also found this but idk how trustworthy it is: http://helpdeskgeek.com/free-tools-review/download-multiple-files-at-once-in-windows/), or add each Location manually and save them all into 1 big playlist. It's all a 2 step because the .pls that they give you contains the true links.

2
  • Your answer is a bit hard to read. Could you rewrite it, so that it is clearer? Commented Oct 20, 2014 at 13:57
  • Edited and added a full current list for di in the end of the post.
    – Ade
    Commented Oct 21, 2014 at 12:38
0

This solution uses command line programs:
curl - cURL tool to transfer data from or to a server
grep - Grep a command-line utility that can search and filter text
Linux users should find these either already installed or simply use their distro's package manager to install. Windows users can install Cygwin or a lighter weight toolset Gnu on Windows.

Solution:

The webpage http://listen.di.fm/public3/ is a json list. We only need to get the page using cURL search for the .pls links using grep.

Type this in a command terminal:

curl -s "http://listen.di.fm/public3/" | grep -Po 'http://listen.*?pls'

A subset of the output should be:

http://listen.di.fm/public3/trance.pls
http://listen.di.fm/public3/vocaltrance.pls
http://listen.di.fm/public3/chillout.pls
http://listen.di.fm/public3/house.pls
http://listen.di.fm/public3/harddance.pls
http://listen.di.fm/public3/eurodance.pls
http://listen.di.fm/public3/progressive.pls
http://listen.di.fm/public3/goapsy.pls
... etc.
2
  • 1
    I think it's better to add further explanation about the curl/grep commands. Since it's WebApps, you can't really assume command line knowledge. Would be best to tell that the user should run it from the command line and state that if the commands aren't available on the system - they can be downloaded. Also, there's no OS mentioned - so try to be general Commented May 10, 2018 at 23:38
  • 1
    @arieljannai - Noted. More detail added.
    – Dneyirp
    Commented May 11, 2018 at 20:36
-5

You can download all the .pls files. After that you open this files in a text editor like notepad++. You´ll discover the true url for the station. Add these url in a streaming audio grabber. You´ll download in real time as the music plays. I recomend StremRipper for winamp (you really don´t need winamp to use it) Open the program, press rightclick and paste the true url from the station like inside the PLS files (listen.sky.fm/public3/STATIONNAME.pls)

Dont forget to configure the output folder.

1
  • I asked about how to do that for all stations at once! I know myself that I can download individual stations and I already did that. I also don't need all the technical hoho you described: vlc and others can automatically merge them, so that's no problem too. So that's why I downvoted your answer, you didn't even read my question. The problem is the di.fm/sky.fm websites themselves, that force me to do 5-x clicks to download the respective station, multiply this by 30 and I am busy half an evening just clicking around on di.fm. Commented Oct 27, 2012 at 11:05

Not the answer you're looking for? Browse other questions tagged or ask your own question.