通過HttpWebRequest對象和HttpWebResponse對象從網頁獲取信息的一個實例,有興趣的朋友可以看看。代碼如下:
static string GetWeatherInfo(string s1, string s2)
{
string ResponseText;
string text;
int startIndex;
int endIndex;
Uri url = new Uri(@"http://firetear.com/weather/lvweather.aspx");
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
req.Method = "Post";
StreamReader ReaderText = new StreamReader(res.GetResponseStream(), Encoding.UTF8);
ResponseText = ReaderText.ReadToEnd();
res.Close();
startIndex = ResponseText.IndexOf(s1) + s1.Length;
endIndex = ResponseText.IndexOf(s2);
text = ResponseText.Substring(startIndex, endIndex - startIndex);
return text;
}
private void Form1_Load(object sender, EventArgs e)
{
Label1.Text = GetWeatherInfo(@"g>", @"</");
Label2.Text = GetWeatherInfo(@"天氣:", @",紫");
}
{
string ResponseText;
string text;
int startIndex;
int endIndex;
Uri url = new Uri(@"http://firetear.com/weather/lvweather.aspx");
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
req.Method = "Post";
StreamReader ReaderText = new StreamReader(res.GetResponseStream(), Encoding.UTF8);
ResponseText = ReaderText.ReadToEnd();
res.Close();
startIndex = ResponseText.IndexOf(s1) + s1.Length;
endIndex = ResponseText.IndexOf(s2);
text = ResponseText.Substring(startIndex, endIndex - startIndex);
return text;
}
private void Form1_Load(object sender, EventArgs e)
{
Label1.Text = GetWeatherInfo(@"g>", @"</");
Label2.Text = GetWeatherInfo(@"天氣:", @",紫");
}
效果圖:
如果想在網頁中實現類似的功能,有更簡單的方法,只需調用下面這段腳本即可,而且其返回的結果爲一張圖片,效果更好。
<img src="http://firetear.com/weather/weather.aspx" border="0" alt="查詢及定製我的天氣預報信息" border="0" />
效果圖: