I’ve been using this code to try and get data from the google weather API, but I never get even close to pulling out what i want.
My goal is to look at:
<forecast_information>
**<city data="london uk"/>**
<postal_code data="london uk"/>
<latitude_e6 data=""/>
<longitude_e6 data=""/>
<forecast_date data="2011-10-09"/>
<current_date_time data="2011-10-09 12:50:00 +0000"/>
<unit_system data="US"/>
</forecast_information>
<current_conditions>
<condition data="Partly Cloudy"/>
<temp_f data="68"/>
**<temp_c data="20"/>**
**<humidity data="Humidity: 68%"/>**
<icon data="/ig/images/weather/partly_cloudy.gif"/>
**<wind_condition data="Wind: W at 22 mph"/>**
</current_conditions>
And only return the text of the child nodes.
So the result would be:
City: London UK
Temp: 20c
Humidity: 68%
Wind: 22mph
Currently I am trying to use this, but got nowhere…
XmlDocument doc = new XmlDocument();
XmlNodeList _list = null;
doc.Load("http://www.google.com/ig/api?weather=london+uk");
_list = doc.GetElementsByTagName("forecast_information/");
foreach (XmlNode node in _list)
{
history.AppendText(Environment.NewLine + "City : " + node.InnerText);
}
//NOTE, currently code is set to display ALL child nodes
Perhaps someone can shed some light on the matter?
Maybe you should use
node.SelectSingleNode("city").Attributes["data"].Valueinstead ofnode.InnerText–EDIT–
This works for me