本人利用webclient或者httprequest方法抓取ups网站数据,老是返回500.哪个高手帮忙看看。下面是html的代码,
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head><body>
<form action="http://wwwapps.ups.com/WebTracking/summary" method="post">
<input type="hidden" name="loc" value="en_US" >
<input type="hidden" name="summary" value="true">
<input name="tdts1" type="hidden"/>
<input name="tdts9.x" value="16"  type="hidden"/>
<input name="tdts9.y" value="16" type="hidden"/>
<INPUT name="HIDDEN_FIELD_SESSION" type="HIDDEN" value="rO0ABXNyAB9jb20udXBzLnNlc3Npb24uSGlkZGVuRmllbGRJbXBsIWGf8vYI9fsMAAB4cHcMAAABGwHcHBIAAABVc3IAEWphdmEudXRpbC5IYXNoTWFwBQfawcMWYNEDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA/QAAAAAAADHcIAAAAEAAAAAJ0AAtISURERU5fTElTVHNyABNqYXZhLnV0aWwuSGFzaHRhYmxlE7sPJSFK5LgDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA/QAAAAAAAEXcIAAAAFwAAAAx0ABNUeXBlT2ZJbnF1aXJ5TnVtYmVydAABVHQADFJlcXVlc3RlclVSTHQAKmh0dHA6Ly93d3cudXBzLmNvbS9jb250ZW50L3VzL2VuL2luZGV4LmpzeHQADmZyb21UcmFja0lucHV0dAAEdHJ1ZXQAE3RyYWNrbnVtc19kaXNwbGF5ZWR0AAE1dAALSFRNTFZlcnNpb250AAM1LjB0ABlBZ3JlZVRvVGVybXNBbmRDb25kaXRpb25zdAADeWVzdAADbG9jdAAFZW5fVVN0AA5JbnF1aXJ5TnVtYmVyMXQAC0g3MTQxOTM1MDMydAARTnVtYmVyRGV0YWlsTGluZXN0AAExdAARTVVMVElQTEVfU0hJUFBFUlN0AAVmYWxzZXQACVJlcXVlc3RlcnQAB1VQU0hvbWV0ABFOT1RfQUxMX1NZU19BVkFJTHEAfgAaeHQAE1RSQUNLX0RBVEFfTElORUlURU1zcQB+AAU/QAAAAAAACHcIAAAACwAAAAF0AAVsaW5lMXVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5+kde0cCAAB4cAAAAEJ0AApFQVJUSCBDSVRZdAACS0J0AAJVU3QACDIwMDgwNjE2dAACTU90AAYxMDE3MDB0AAFEdAADMDAxdAAAcQB+ACtxAH4AK3EAfgArcQB+ACtxAH4AK3EAfgArcQB+ACtxAH4AK3EAfgArcQB+ACtxAH4AK3QAC1NBSU5UIExPVUlTdAACVVNxAH4AK3EAfgArcQB+ACt0AAJNT3QABTEwMDEwcQB+ACtxAH4AK3QACDIwMDgwNjEydAAKICAgICAgQ04wNHQACDIxYjQyOGJldABHMzAzNjAxZTE3OTAyYmIwMDAwNDI2ODQ3NTRlMGViOTc5NywzMDM2MDFlMTc5MDJiYjAwMDA0MjY4NDc1NGUwZWIwOTk3LCx0AAZBU0RBU0RxAH4AK3QABk9GRklDRXQAATFxAH4AK3EAfgArdAAEMC41MHQACDIwMDgwNjEydAAEdGR0c3QAAHQAAHEAfgArdAACMTF0AAB0AABxAH4ANHQACVVQUyBTQVZFUnEAfgArcQB+ACtxAH4AK3QAClJJQ0hBUkRTT05xAH4AKXEAfgArdAAAdAAGMTQxOTU0dAALSDcxNDE5MzUwMzJ0AANLR1NxAH4AK3QADjEgRVhQUkVTUyBXQVkgcQB+ACxxAH4ALnQABTYzMTIxcQB+AC14eHg=A0f40eea05">
<input type="image" src="/img/en/btn_lnk_view_pac_prog_a.gif" WIDTH="138" HEIGHT="14" align="top" border="0" alt="View package progress" name="tdts2"><input type="submit" value="jj" /><input type="image" src="/img/en/btn_lnk_view_pac_prog_a.gif" name="tdts9">
</form>
</body>
</html>相信有几个参数高手应该看的出来,我通过html的提交表单是可以查到数据的,但是用webclient或httprequest方法却不能,高手能不能帮忙解决!!!解决的还有加分

解决方案 »

  1.   

    不是有个UPS OnLine Tools吗,能不能直接用?
      

  2.   

    用UPS OnLine Tools好像要收费的,而且我想嵌到我自己的模块里,难道没有高手搞过吗?我要加分了!
      

  3.   

    http://wwwapps.ups.com/WebTracking/summary
    对它post啊,
    开始是不是有Cookies?获取到Cookies加进去
    搞个HttpWatch监视下看看
      

  4.   

    上面我已经把html的代码贴出来了,只要点一下按钮就可以提交,并且可以显示内容的,应该跟cookies没关系的吧。http头我已经看过。
      

  5.   

    怎么会抓取不到呢?
    private void postrequest()
            {
                CookieContainer webCookieContainer = new CookieContainer();
                String url = "http://wwwapps.ups.com/WebTracking/summary";
                HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);            string s = "loc=en_US&summary=true&tdts1=&tdts9.x=16&tdts9.y=16&HIDDEN_FIELD_SESSION=rO0ABXNyAB9jb20udXBzLnNlc3Npb24uSGlkZGVuRmllbGRJbXBsIWGf8vYI9fsMAAB4cHcMAAABGwHcHBIAAABVc3IAEWphdmEudXRpbC5IYXNoTWFwBQfawcMWYNEDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA%2FQAAAAAAADHcIAAAAEAAAAAJ0AAtISURERU5fTElTVHNyABNqYXZhLnV0aWwuSGFzaHRhYmxlE7sPJSFK5LgDAAJGAApsb2FkRmFjdG9ySQAJdGhyZXNob2xkeHA%2FQAAAAAAAEXcIAAAAFwAAAAx0ABNUeXBlT2ZJbnF1aXJ5TnVtYmVydAABVHQADFJlcXVlc3RlclVSTHQAKmh0dHA6Ly93d3cudXBzLmNvbS9jb250ZW50L3VzL2VuL2luZGV4LmpzeHQADmZyb21UcmFja0lucHV0dAAEdHJ1ZXQAE3RyYWNrbnVtc19kaXNwbGF5ZWR0AAE1dAALSFRNTFZlcnNpb250AAM1LjB0ABlBZ3JlZVRvVGVybXNBbmRDb25kaXRpb25zdAADeWVzdAADbG9jdAAFZW5fVVN0AA5JbnF1aXJ5TnVtYmVyMXQAC0g3MTQxOTM1MDMydAARTnVtYmVyRGV0YWlsTGluZXN0AAExdAARTVVMVElQTEVfU0hJUFBFUlN0AAVmYWxzZXQACVJlcXVlc3RlcnQAB1VQU0hvbWV0ABFOT1RfQUxMX1NZU19BVkFJTHEAfgAaeHQAE1RSQUNLX0RBVEFfTElORUlURU1zcQB%2BAAU%2FQAAAAAAACHcIAAAACwAAAAF0AAVsaW5lMXVyABNbTGphdmEubGFuZy5TdHJpbmc7rdJW5%2Bkde0cCAAB4cAAAAEJ0AApFQVJUSCBDSVRZdAACS0J0AAJVU3QACDIwMDgwNjE2dAACTU90AAYxMDE3MDB0AAFEdAADMDAxdAAAcQB%2BACtxAH4AK3EAfgArcQB%2BACtxAH4AK3EAfgArcQB%2BACtxAH4AK3EAfgArcQB%2BACtxAH4AK3QAC1NBSU5UIExPVUlTdAACVVNxAH4AK3EAfgArcQB%2BACt0AAJNT3QABTEwMDEwcQB%2BACtxAH4AK3QACDIwMDgwNjEydAAKICAgICAgQ04wNHQACDIxYjQyOGJldABHMzAzNjAxZTE3OTAyYmIwMDAwNDI2ODQ3NTRlMGViOTc5NywzMDM2MDFlMTc5MDJiYjAwMDA0MjY4NDc1NGUwZWIwOTk3LCx0AAZBU0RBU0RxAH4AK3QABk9GRklDRXQAATFxAH4AK3EAfgArdAAEMC41MHQACDIwMDgwNjEydAAEdGR0c3QAAHQAAHEAfgArdAACMTF0AAB0AABxAH4ANHQACVVQUyBTQVZFUnEAfgArcQB%2BACtxAH4AK3QAClJJQ0hBUkRTT05xAH4AKXEAfgArdAAAdAAGMTQxOTU0dAALSDcxNDE5MzUwMzJ0AANLR1NxAH4AK3QADjEgRVhQUkVTUyBXQVkgcQB%2BACxxAH4ALnQABTYzMTIxcQB%2BAC14eHg%3DA0f40eea05";
                byte[] requestBytes = System.Text.Encoding.ASCII.GetBytes(s);
                req.Method = "POST";
                req.ContentType = "application/x-www-form-urlencoded";
                req.ContentLength = requestBytes.Length;
                req.UserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0;CIBA)";
                req.CookieContainer = webCookieContainer;
                req.KeepAlive = true;
                req.Accept = "*/*";             Stream requestStream = req.GetRequestStream();
                requestStream.Write(requestBytes, 0, requestBytes.Length);
                requestStream.Close();            HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
                resp.Cookies = webCookieContainer.GetCookies(req.RequestUri); 
                StreamReader sr = new StreamReader(res.GetResponseStream(), System.Text.Encoding.Default);
                String line = sr.ReadToEnd();
                sr.Close();
                resp.Close();
            }
      

  6.   

     是
    StreamReader sr = new StreamReader(resp.GetResponseStream(), System.Text.Encoding.Default);