Perhaps you are impatient? The page contains 680 players,
and you sleep for 15 seconds for each player. So,
even if the fetching and scanning takes no time at all,
it's still going to take 2 hours and 50 minutes for your
program to finish. I took the sleep out, and your program
seems to be running fine.
I realize that the script will take a while to run and that's why I added the print STDERR statement. Thinking the problem was that maybe those statements weren't printing immediately, I set $|=1. It doesn't seem to be helping. I'm rerunning the code and it's stuck again, this time at the second iteration.
Anyway, thanks for your help. I'm now using LWP::Simple::getstore to save the files locally. I hope that by running the script against local files, I'll be able to bypass whatever's holding up the get calls.