急需解决:100分求助网页抓取问题-----~~~~
在一个已经分布的网页(比如www.sina.com.cn)上面有条新闻,我想在web上面通过我自己做的网页通过新闻的url来取得那个已经发布了的网页上的新闻部分的数据,其他内容都不要,请问怎么可以实现这个功能呢?!请高手指点,谢谢!
------解决方案--------------------一般来说是用HttpWebRequest获取网页源文件,正则分析取出新闻内容
------解决方案--------------------///获取网页源文件
private string GetHtmlSource(string url)
{
string html = " ";
try
{
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream stream = response.GetResponseStream();
StreamReader reader = new StreamReader(stream, Encoding.GetEncoding( "GB2312 "));
html = reader.ReadToEnd();
}
catch
{
MessageBox.Show( "无法连接到远程服务器,请检查您的网络是否正常! ", "提示 ");
}
return html;
}
#endregion
然后对网页的代码进行解析,得到自己想要的内容
------解决方案--------------------HttpWebRequest 提醒 抓的好是好,不好要被人投诉的哦
------解决方案--------------------我写过,琐碎得很,思路就是过客说得那样。还要考虑图片,flash 文件这些东西。时间够用慢慢学,不够用的话,找人写个。
------解决方案--------------------思路比较简单关键是分析目标网页的结构,而且如果人家更改版式的话,又要重新分析了
------解决方案--------------------一般新闻都有RSS,用它不行吗?
------解决方案--------------------那你就把css全部取下来
------解决方案--------------------用rss
------解决方案--------------------你抓出来了,分析起来不是很麻烦?用rss吧