很多网站实行会员制度,网站里的某一块,或全部数据只对会员开放,就是说你必须登陆后才能看的到,那么怎样才能采集这样的网站数据呢?
一般的网站多是才用Cookie机制来实现用户登陆了,当你登陆一个网站后服务器就会发一段Cookie给你的浏览器,这样你,接下来访问这个网站的其他页面时,浏览器多会自动带上这段信息,而服务器上的CGI(Asp,PHP,Asp.Net)等就是通过这段数据来判断你是否登陆,应次,登陆一个网站,获得服务器发过来的Cookie 信息,并且在以后的请求(请求要采集的页面)里把这段Cookie信息添加到请求报头里,这样服务器就会认为你是已经登陆的用户(事实上我们确实登陆了)
实现以上功能可以通过.Net Windows程序中的WebBrowser控件轻松实现,WebBrowser控件中有一个webBrowser1.Document.Cookie的属性你只要通过他就可以轻松或去与设定Cookie信息.当然你可以通过它来获取Cookie信息,再使用System.Net.WebClient类来采集指定的页面
更多文章可以参考(http://www.weekday-wow.com)