for (int i = coll.PageStart; i < coll.PageEnd; i++)
{
url = coll.GetUrl.Replace("{$page$}", i.ToString());
WebRequest request;
request=WebRequest.Create(url);//请求uri
stream = request.GetResponse().GetResponseStream();//当请求的URL页面有错误时这里就会报错
strRead = new StreamReader(stream, code);//读取流
HtmlCode = strRead.ReadToEnd();
strRead.Close();
} 比如,请求一个ASP页面 http://xxx.com/show.asp?id=123 这个页面本身就有执行时错误,在浏览器中可以看到错误提示,
有什么办法捕获这个错误且继续下轮循环? 比如我想请求 show.asp?id=100 到 id=200的页.这其中有些页面可能存在错误,当请求错误时不管当前的前面进行一轮循环?在线等!
for (int i = coll.PageStart; i < coll.PageEnd; i++)
{
try
{
url = coll.GetUrl.Replace("{$page$}", i.ToString());
WebRequest request;
request=WebRequest.Create(url);//请求uri
stream = request.GetResponse().GetResponseStream();//当请求的URL页面有错误时这里就会报错
strRead = new StreamReader(stream, code);//读取流
HtmlCode = strRead.ReadToEnd();
strRead.Close();
}
catch{}
}
{
try
{
url = coll.GetUrl.Replace("{$page$}", i.ToString());
WebRequest request;
request=WebRequest.Create(url);//请求uri
stream = request.GetResponse().GetResponseStream();
strRead = new StreamReader(stream, code);//读取流
HtmlCode = strRead.ReadToEnd();
strRead.Close(); }
catch()
{
continue;
}
}