public static string get_redirect_url(string url, string referer_url) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); if (url.Contains("coupon") && url.Contains("taobao.com")) { request.UserAgent = "Mozilla/5.0 (iPad; U; CPU OS 3_2_2 like Mac OS X; en-us) AppleWebKit/531.21.10 (KHTML, like Gecko) Version/4.0.4 Mobile/7B500 Safari/531.21.10"; } else { request.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.57 Safari/537.17"; } request.Accept = "image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*"; request.Referer = referer_url; request.Headers.Add("Accept-Language", "zh-cn"); string cookie = CookieUtil.get_cookie("http://www.taobao.com"); request.Headers.Add("Cookie", cookie); request.AllowAutoRedirect = false; request.Method = "GET"; request.Timeout = 0x7d0; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); StreamReader reader = new StreamReader(response.GetResponseStream()); string str2 = reader.ReadToEnd(); response.Close(); reader.Close(); if (HttpStatusCode.Found.Equals(response.StatusCode) || HttpStatusCode.MovedPermanently.Equals(response.StatusCode)) { string str3 = response.Headers.Get("Location").ToString(); if (str3.Contains("/t_js?tu=")) { return(get_redirect_url(smethod_22(str3.Split(new char[] { '=' })[1]), str3)); } if (str3.Contains("coupon") && str3.Contains("taobao.com")) { return(str3); } if (str3.Contains("item.htm?id=")) { return(str3); } if (str3.Contains("detail.ju.taobao.com")) { return(str3); } if ((((str3.Contains("taobao.com") || str3.Contains("tmall.com")) || str3.Contains("yao.95095.com")) && str3.Contains("item.htm")) && str3.Contains("id=")) { return(str3); } if (str3.Contains("shop/view_shop.htm?user_number_id=")) { return(str3); } return(get_redirect_url(str3, str3)); } if (url.Contains("m.tb.cn")) { int startIndex = str2.IndexOf("var url = '") + 11; int length = str2.IndexOf("'", startIndex) - startIndex; return(get_redirect_url(str2.Substring(startIndex, length), url)); } return(url); }