Tigga - another quickie if you don't mind

. Today my homepage is taking an eternity to display. I used the old ?explain=1 at the end of the link to see what queries / times were being executed. It produced the following:
Code:
Query: SELECT * FROM weather_userdata WHERE userid='1'
Time before: 0.22496795654297
Time after: 0.22560501098633
table type possible_keys key key_len ref rows Extra
weather_userdata const PRIMARY PRIMARY 4 const 1
--------------------------------------------------------------------------------
Query: SELECT findword,replaceword FROM replacement WHERE replacementsetid IN(-1,'14') ORDER BY replacementsetid DESC,replacementid DESC
Time before: 20.499752998352
Time after: 20.501306056976
table type possible_keys key key_len ref rows Extra
replacement ALL replacementsetid 120 where used; Using filesort
--------------------------------------------------------------------------------
Page generated in 20.499583959579 seconds with 33 queries,
spending 0.098888039588928 doing MySQL queries and 20.400695919991 doing PHP things.
Query: UPDATE session SET lastactivity=1055272282,location='/myvbindex/index.php?explain=1',styleid=11 WHERE sessionhash='c7402ff04c96a36383b780512e15ad35' Time before: 20.525825977325 Time after: 20.526376008987
--------------------------------------------------------------------------------
Query: UPDATE user SET lastactivity=1055272282,inforum='0' WHERE userid='1' Time before: 20.526528000832 Time after: 20.526996970177
Its taking anywhere between 20-30 seconds to produce the main page for some reason today. It pauses in the weather area as you can see above. Is this due to a really bad connection problem to the website providing the weather? Nothing else has changed really and it used to be very quick.
Thx. for any advice.
Update
I've just turned off the weather display and the page loads fine. So I guess it must be down to the website providing the weather. As this is out of our control and would produce a timeout after 30 seconds for php execution, would it be possible to incorporate some sort of time limit on display of the weather and if it doesn't display in that time then don't display it? Otherwise we're all at the mercy of an independently run site.