string Url = "http://xyq.cbg.163.com/static_file/164/buy_equip_list/equip_list1.html";
Stream stream = new WebClient().OpenRead(Url);
str = new StreamReader(stream, Encoding.GetEncoding(charset)).ReadToEnd();
上面是我的代码
当我通过上面代码去获取页面内容时会提示需要登陆,
那我先在页面上在
http://xyq.cbg.163.com/cgi-bin/show_login.py?act=show_login&area_id=1&area_name=%E4%B8%8A%E6%B5%B71%E5%8C%BA&server_id=164&server_name=%E5%A4%A9%E9%A9%AC%E5%B1%B1
这个页面通过验证码匿名登陆再在我的页面运行我的代码,还是说我没有登陆的,这个是怎么验证的呀~!难道 我登陆后Session会在我离开页面时清空?
如果是,我有什么办法模拟登陆对页面的内容做采集吗?
Stream stream = new WebClient().OpenRead(Url);
str = new StreamReader(stream, Encoding.GetEncoding(charset)).ReadToEnd();
上面是我的代码
当我通过上面代码去获取页面内容时会提示需要登陆,
那我先在页面上在
http://xyq.cbg.163.com/cgi-bin/show_login.py?act=show_login&area_id=1&area_name=%E4%B8%8A%E6%B5%B71%E5%8C%BA&server_id=164&server_name=%E5%A4%A9%E9%A9%AC%E5%B1%B1
这个页面通过验证码匿名登陆再在我的页面运行我的代码,还是说我没有登陆的,这个是怎么验证的呀~!难道 我登陆后Session会在我离开页面时清空?
如果是,我有什么办法模拟登陆对页面的内容做采集吗?
原理你要知道,你post登录账户进去,服务器验证通过,返回sessionid作为cookie
以后再访问,你加上它服务器就认为这个请求和之前的验证来自同一个会话,因此是登录过的。
应该要在我的页面上做个模拟登陆,这样我这里才能得到Session值,然后在采集的时候回传给服务器那边让服务器理解为我已登陆吗?