Since Yahoo cannot provide accurate weather for my part of the world (Germany) I found a way to get that from Weatherunderground using their API.
In order to make this work, you will have to get your own identification code "for free" from weather underground here
http://www.wunderground.com/weather/api/
and make the changes to this string; Your_ID and Your City
$json_string = file_get_contents("http://api.wunderground.com/api/your_ID/conditions/q/your_City.json")
I also did some translations into German, if you need that too.
It isn't completely finished, but you can tinker with the script to add anything from the .json