I had no idea there was a little community dedicated to pandora hacking.
For a little while, I had been getting by with a little shell script wrapped around a command-live version of wireshark:
#!/bin/bash
FOLDER=$1
PATH=$PATH:/c/Program\ Files\ \(x86\)/Wireshark
# grab pandora mp4 files URLs in incoming.log
tshark -i 2 -R 'http' -l |
fgrep --line-buffered 'access/?version' |
perl -pe '$|=1;s/^.*-> ([^ ]*) .* (\/access\/[^ ]+) HTT.*$/http:\/\/$1$2/g' > incoming.log &
# watch for new URLs
tail -n 0 -f incoming.log | while read url
do
# check if we already have this url loaded
HASH=`echo -n $url|md5sum -t|cut -f1 -d' '`
if [ -a $FOLDER/$HASH.m4a ]
then
echo "ok."
else
curl -m 15 "$url" > $FOLDER/$HASH.m4a
fi
done
As you can see, absolutely no artist/song information was preserved, and duplicate songs were likely to be present in the final file list.
Still, it was sufficient to throw the files at a player with a random shuffle.
A little bit ago, I realized Fiddler2 could be scripted in rather open-ended ways, and saw the getFragment XML chunk pandora uses that contains detailed song information.
I was about to start coding something when I tried searching for "pandora fiddler", and saw the 5th result pointing straight here.
LiquidCool method's pretty much exactly what I was planning to do, except I'd probably have hacked my code in the CustomRules.js file, since that's easier to start on.
So, thank you, and keep up the good work!