困扰我N天的问题终于解决了,当我用.NET写采集器的时候,遇到需要登陆的问题,这时就要设置COOKIE
可是我怎么设置它都不行,后来通过嗅探嗅探数据发现,原来我设置的COOKIE只设置了一半,container.SetCookies(uri,cookie)方法只设置分号前的部分,当我把COOKIE分离后一个一个添加时发现,一切都解决了。
1 private static void SetCookies(string CookieHead,Uri uri,CookieContainer container)
2 {
3 if(CookieHead==null)
4 {
5 return;
6 }
7 else
8 {
9 string [] Cookies=CookieHead.Split(";".ToCharArray());
10 foreach(string cookie in Cookies)
11 {
12 //Log.Write(cookie);
13 container.SetCookies(uri,cookie);
14 }
15 }
16
17
18 }
2 {
3 if(CookieHead==null)
4 {
5 return;
6 }
7 else
8 {
9 string [] Cookies=CookieHead.Split(";".ToCharArray());
10 foreach(string cookie in Cookies)
11 {
12 //Log.Write(cookie);
13 container.SetCookies(uri,cookie);
14 }
15 }
16
17
18 }