Greetings!
I have been working on the script you posted today, Optimizing where possible, and while I have managed to speed the process by about 50 seconds, I feel that its going to be difficult to improve on this further.
The reasons for this are that most of the scripts execution time comes from waiting on the website to transmit the data to us, the client.
This would mean that there are only a few ways we can fix this.
1) Get a faster connection (At which point I feel we would be limited by the other server)
2) Rewrite the script in another framework / language which would allow us to use threading (Something like .NET4.0, or even PHP may work.)
3) Give up on squeezing any more performance out of the script and keep the current one.
Thank you for your time, Feel free to message me with any questions!
-Jay X Peet