Jump to content

Pandora Hack - Ultimate Edition


Recommended Posts

People it´s really easy to download the mp3 to your computer. Do the following thing open the pandora page with the internet explorer. Then log in into pandora and start lessen songs. Then go to your temporary internet files and drag the following file "v8?rid=" into a firefox blank page.

This file v8?rid=numberP&lid...... (it´s a really long name) is an xml so what you are going to see in the firefox page is the following:

methodResponse>

?

<params>

?

<param>

?

<value>

?

<array>

?

<data>

?

<value>

?

<struct>

?

<member>

<name>artistSummary</name>

<value>Fito Paez</value>

</member>

?

<member>

<name>artistDetailURL</name>

?

<value>

http://www.pandora.com/music/artist/621208e3206ebbe6

</value>

</member>

?

<member>

<name>matchingSeed</name>

<value>L33106</value>

</member>

?

<member>

<name>songDetailURL</name>

<value>http://www.pandora.com/music/song/7b71ee505bc338a6</value>

</member>

?

<member>

<name>albumDetailURL</name>

?

<value>

http://www.pandora.com/music/album/8c77d06f478033d0

</value>

</member>

?

<member>

<name>webId</name>

<value>7b71ee505bc338a6</value>

</member>

?

<member>

<name>musicComUrl</name>

?

<value>

http://search.music.com/?b=470286336%7<...uerySrc=pandora

</value>

</member>

?

<member>

<name>rating</name>

?

<value>

<int>1</int>

</value>

</member>

?

<member>

<name>artRadio</name>

<value/>

</member>

?

<member>

<name>stationId</name>

<value>156439274625952293</value>

</member>

?

<member>

<name>albumTitle</name>

<value>Super 6</value>

</member>

?

<member>

<name>artistMusicId</name>

<value>R182533</value>

</member>

?

<member>

<name>audioURL</name>

?

<value>

http://audio.pandora.com/<SNIP>pj2ccYSu4%3D

</value>

</member>

?

<member>

<name>amazonUrl</name>

?

<value>

&path=search-handle-ur<SNIP>er%2B6

</value>

</member>

?

<member>

<name>matchingSeedLabel</name>

<value>Antologia by Fito Paez</value>

</member>

?

<member>

<name>onTour</name>

?

<value>

<boolean>0</boolean>

</value>

</member>

?

<member>

<name>itunesUrl</name>

?

<value>

&RD_PARM1=http%253A%252F%2<SNIP>30

</value>

</member>

?

<member>

<name>focusTrait</name>

<value>Med Rock Influence</value>

</member>

?

<member>

<name>musicId</name>

<value>S438877</value>

</member>

?

<member>

<name>songTitle</name>

<value>El Amor Despues Del Amor</value>

</member>

?

<member>

<name>focusTraitId</name>

<value>F6580</value>

</member>

?

<member>

<name>identity</name>

<value>15010280a0a345edc705040430064310</value>

</member>

</struct>

</value>

?

<value>

?

<struct>

?

<member>

<name>artistSummary</name>

<value>Andres Calamaro</value>

</member>

?

<member>

<name>artistDetailURL</name>

?

<value>

http://www.pandora.com/music/artist/6909840c0f09b15b

</value>

</member>

?

<member>

<name>matchingSeed</name>

<value>L33106</value>

</member>

?

<member>

<name>songDetailURL</name>

<value>http://www.pandora.com/music/song/610759db1ff941f3</value>

</member>

?

<member>

<name>albumDetailURL</name>

?

<value>

http://www.pandora.com/music/album/2b326b0ea17f3879

</value>

</member>

?

<member>

<name>webId</name>

<value>610759db1ff941f3</value>

</member>

?

<member>

<name>musicComUrl</name>

?

<value>

http://search.music.com/?b=<SNIP>ida...uerySrc=pandora

</value>

</member>

?

<member>

<name>rating</name>

?

<value>

<int>0</int>

</value>

</member>

?

<member>

<name>artRadio</name>

?

<value>

http://images-eqx-sjl02.pandora.com/images...P>W_160H.jpg

</value>

</member>

?

<member>

<name>stationId</name>

<value>156439274625952293</value>

</member>

?

<member>

<name>albumTitle</name>

<value>Honestidad Brutal</value>

</member>

?

<member>

<name>artistMusicId</name>

<value>R186316</value>

</member>

?

<member>

<name>audioURL</name>

?

<value>

http://audio-eqx-sjl07.pandora.com/access/...>kGZvUqWI%3D

</value>

</member>

?

<member>

<name>amazonUrl</name>

?

<value>

&path=search-handle-url%2Finde<SNIP>le%3DHonestidad%2BBrutal

</value>

</member>

?

<member>

<name>matchingSeedLabel</name>

<value>Antologia by Fito Paez</value>

</member>

?

<member>

<name>onTour</name>

?

<value>

<boolean>0</boolean>

</value>

</member>

?

<member>

<name>itunesUrl</name>

?

<value>

&RD_PARM1=http%253A%252F%2<SNIP>tnerId%3D30

</value>

</member>

?

<member>

<name>focusTrait</name>

<value>Med Rock Influence</value>

</member>

?

<member>

<name>musicId</name>

<value>S487624</value>

</member>

?

<member>

<name>songTitle</name>

<value>Te Quiero Igual</value>

</member>

?

<member>

<name>focusTraitId</name>

<value>F6580</value>

</member>

?

<member>

<name>identity</name>

<value>9f721eb33b415fcc80ddb483b0e52264</value>

</member>

</struct>

</value>

?

<value>

?

<struct>

?

<member>

<name>artistSummary</name>

<value>Babasonicos</value>

</member>

?

<member>

<name>artistDetailURL</name>

?

<value>

http://www.pandora.com/music/artist/e3dcf70456149a40

</value>

</member>

?

<member>

<name>matchingSeed</name>

<value>L33106</value>

</member>

?

<member>

<name>songDetailURL</name>

<value>http://www.pandora.com/music/song/42a79e8b297e9394</value>

</member>

?

<member>

<name>albumDetailURL</name>

?

<value>

http://www.pandora.com/music/album/14e93de7a8fd9807

</value>

</member>

?

<member>

<name>webId</name>

<value>42a79e8b297e9394</value>

</member>

?

<member>

<name>musicComUrl</name>

?

<value>

http://search.music.com/?b=4702863<SNIP...uerySrc=pandora

</value>

</member>

?

<member>

<name>rating</name>

?

<value>

<int>0</int>

</value>

</member>

?

<member>

<name>artRadio</name>

?

<value>

http://images-10g-eqx-sjl00.pandora.com/im...SNIP>59H.jpg

</value>

</member>

?

<member>

<name>stationId</name>

<value>156439274625952293</value>

</member>

?

<member>

<name>albumTitle</name>

<value>Anoche</value>

</member>

?

<member>

<name>artistMusicId</name>

<value>R186562</value>

</member>

?

<member>

<name>audioURL</name>

?

<value>

http://audio-eqx-sjl00.pandora.com/access/...;PIS9TxrDMwU%3D

</value>

</member>

?

<member>

<name>amazonUrl</name>

?

<value>

&path=search-handle-url%2Findex%<SNIP>title%3DAnoche

</value>

</member>

?

<member>

<name>matchingSeedLabel</name>

<value>Antologia by Fito Paez</value>

</member>

?

<member>

<name>onTour</name>

?

<value>

<boolean>0</boolean>

</value>

</member>

?

<member>

<name>itunesUrl</name>

?

<value>

&RD_PARM1=http%253A%252F%252F<SNIP>%2526partnerId%3D30

</value>

</member>

?

<member>

<name>focusTrait</name>

<value>Med Rock Influence</value>

</member>

?

<member>

<name>musicId</name>

<value>S487717</value>

</member>

?

<member>

<name>songTitle</name>

<value>Un Flash</value>

</member>

?

<member>

<name>focusTraitId</name>

<value>F6580</value>

</member>

?

<member>

<name>identity</name>

<value>bcb78b20d7689e2ac86c998a81c7ddf2</value>

</member>

</struct>

</value>

?

<value>

?

<struct>

?

<member>

<name>artistSummary</name>

<value>Mana</value>

</member>

?

<member>

<name>artistDetailURL</name>

?

<value>

http://www.pandora.com/music/artist/4cae4afc2c39108c

</value>

</member>

?

<member>

<name>matchingSeed</name>

<value>L33106</value>

</member>

?

<member>

<name>songDetailURL</name>

<value>http://www.pandora.com/music/song/75222e86160d002e</value>

</member>

?

<member>

<name>albumDetailURL</name>

?

<value>

http://www.pandora.com/music/album/a7100d7150719bc4

</value>

</member>

?

<member>

<name>webId</name>

<value>75222e86160d002e</value>

</member>

?

<member>

<name>musicComUrl</name>

?

<value>

http://search.music.com/?b=470<SNIP>...uerySrc=pandora

</value>

</member>

?

<member>

<name>rating</name>

?

<value>

<int>0</int>

</value>

</member>

?

<member>

<name>artRadio</name>

?

<value>

http://images-eqx-sjl07.pandora.com/images...>0W_133H.jpg

</value>

</member>

?

<member>

<name>stationId</name>

<value>156439274625952293</value>

</member>

?

<member>

<name>albumTitle</name>

<value>Amar Es Combatir</value>

</member>

?

<member>

<name>artistMusicId</name>

<value>R153624</value>

</member>

?

<member>

<name>audioURL</name>

?

<value>

http://audio-eqx-sjl06.pandora.com/access/<SNIP>s%3D

</value>

</member>

?

<member>

<name>amazonUrl</name>

?

<value>

&path=search-handle-url%2Fin<SNIP>%2BEs%2BCombatir

</value>

</member>

?

<member>

<name>matchingSeedLabel</name>

<value>Antologia by Fito Paez</value>

</member>

?

<member>

<name>onTour</name>

?

<value>

<boolean>0</boolean>

</value>

</member>

?

<member>

<name>itunesUrl</name>

?

<value>

&RD_PARM1=http%25<SNIP>rtnerId%3D30

</value>

</member>

?

<member>

<name>focusTrait</name>

<value>Med Rock Influence</value>

</member>

?

<member>

<name>musicId</name>

<value>S589473</value>

</member>

?

<member>

<name>songTitle</name>

<value>Manda Una Senal</value>

</member>

?

<member>

<name>focusTraitId</name>

<value>F6580</value>

</member>

?

<member>

<name>identity</name>

<value>c21bb4e3c015d0199e35daf93c12c8c5</value>

</member>

</struct>

</value>

</data>

</array>

</value>

</param>

</params>

</methodResponse>

Search for the audioURL tag and then copy an paste the link into a new firefox page. Download the file and rename it to .mp3 extension. The pandora generate 4 audio files for every xml. So if you change the station or if you change the audio, a new xml with the next 4 audio files will be generated.

Excuse for my english and good luck with this!... :) :)

Cooper: Snipped the HUGE urls since it was the concept that mattered.

Link to post
Share on other sites

Wow, cool! Gives us a chance to use the browser we shouldn't want to use anyways, allowing people to upgrade to flash 9 and whatever comes next.

The file includes artist and songname, which currently require us to do Javascript tricks to discover, the URL to the MP3 and a link to Pandora's information page on this track that also includes Pandora's rendition of the album cover.

Does Firefox do something like this aswell? Opera?

Update: Seamonkey does this so I would expect Firefox to do so aswell. In Seamonkey, enter the .mozilla folder (where is this on Windows?), then default, that randomly named folder, then Cache. It's one of the newer files in the folder. Just search for a string you're not likely to find in other files, like "<value>http://www.pandora.com/music/artist".

Link to post
Share on other sites

After doing this a couple of times, I have found the following:

  • You don't need to use Internet Explorer for this to work. At all.

temporary files are here: C:Documents and SettingsUSERNAMELocal SettingsTemporary Internet Files

Just look for the most recently edited file that starts with "v8?rid=numberP&lid=" in the above directory.

The url immediately following the first instance of "AudioURL" in the file is almost always the link to the song that is currently playing. The rest of the time, the audioURL is always before the name of the song shows up in the file.

Hope this helps people who want to download off of Pandora. 8)

Link to post
Share on other sites
After doing this a couple of times, I have found the following:

  • You don't need to use Internet Explorer for this to work. At all.

temporary files are here: C:Documents and SettingsUSERNAMELocal SettingsTemporary Internet Files

Just look for the most recently edited file that starts with "v8?rid=numberP&lid=" in the above directory.

The url immediately following the first instance of "AudioURL" in the file is almost always the link to the song that is currently playing. The rest of the time, the audioURL is always before the name of the song shows up in the file.

Hope this helps people who want to download off of Pandora. 8)

Thanks for the tip but it's the same thing that i said in my first post. :?

The first AudioUrl that is into the xml is the song that is currently in play in pandora. The next 3 AudioURL tags are the next 3 songs that will be played. But if you skip the song or if you change the station a new xml will be generated.

Link to post
Share on other sites

If we'd find out how the Songs get encoded into the 8c77d06f478033d0-code-filenames, it would be possible to download a Song just by typing in artist and title! ;-)

A greasemonkey script wouldn't be bad either, but I think it will be as complicated as Pandora's Jar when you add new songs or artists to a station or if you skip songs, because a new XML file will be created...

So why not just working on updating Pandora's Jar? Why creating something new??

Oh and does anybody know what happens after the 3 next files have played? Does it create a new XML file then? Didn't have time to check that out!

edit:

another thing... It's possible now to get the album art with the XML file, that would be a great improvement for PJ!!! ;)

Link to post
Share on other sites

Yes, after the 4th song is played, a new xml is created with 4 new tracks. There is another user's tool out there that uses the xml to dl all 4 tracks at once, but also plays them one at a time, then when the next song (1 of 4) for the next set plays, the tool downloads the next 4 tracks at once again.

It seems to me we could set it up to simply refresh the station repeatedly after it has downloaded the 4 tracks, and have it do another 4 tracks. This way, it would download many tracks per hour, far more than the number that would play in that same hour.

I am speaking to the other programmer, so I will see if he can enlighten us.

Link to post
Share on other sites
  • 2 weeks later...

This post at tweakguides explains that Firefox stores its cache in

C:Documents and SettingsUSERNAMEApplication DataMozillaFirefoxProfiles

but Firefox stores everything into containers so you won't see the files you downloaded. You can browse them if you type the URL about:cache or you use a CacheViewer

Link to post
Share on other sites

Yeah, and for the last 3 or 4 days now I've been spending my free time trying to figure out this rotten format they're using. It should've been dead easy, but somehow I'm coming up short. I've got the _CACHE_MAP_ format down, but the format of the _CACHE_00X_ files seems off. The _CACHE_MAP_ entries refer to pieces inside those files, yet it seems there are discrepancies (starting block numbers WELL beyond the end of the file and stuff).

Interestingly, Seamonkey on Linux will store that XML response in separate files, whereas Firefox on Windows will embed them in its _CACHE_00X_ files.

Link to post
Share on other sites

It actually is really simple in Firefox...

Downloaded data, even these XML responses, isn't stored in weird containers or anything, it's just named weirdly. An easy way to get hold of the XML file is to look over the most recent(modification date) 40-or-so files, and look for the ones whose first five characters are "<?xml". That's it.

Link to post
Share on other sites
It actually is really simple in Firefox...

Downloaded data, even these XML responses, isn't stored in weird containers or anything, it's just named weirdly. An easy way to get hold of the XML file is to look over the most recent(modification date) 40-or-so files, and look for the ones whose first five characters are "<?xml". That's it.

That's what Seamonkey does, but Firefox 1.(whatever. New-ish) dunks those responses inside its _CACHE_00X_ files. Also, those separate files that were created had unreliable timestamps on Windows. Either Windows is being... well... Windows, or something's wrong here. The _CACHE_XXX_ files should contain all the needed metadata, but I can't seem to isolate it.

I'm calling that part quits for now. If it places the responses in a separate file, and those new files get normal timestamps to go with them, I can support them. I'll whip things up so that you can get something out of it, but I'm going to need a Javascript guy to clean up and/or automate the front-end side of this.

I'll place my code in the Subversion repository we have sometime this week, and let you all know when it's there. If anything it will be as capable as that Pandora Unleashed thing, but using Java so it will be cross-platform, and support *WAY* more browsers (tested with Opera, IE and Moz-based browsers that store that XML in a separate file).

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...