C#html敏捷包,捕获重定向

时间:2011-06-04 20:51:01

标签: c# html-agility-pack

大家好,这个很简单(我希望)。我正在使用htmlagility pack来进行网络浏览。那么如果我输入url,然后将我引导到一个新的url会怎样,我如何捕获新的重定向URL呢?

如果htmlagility pack没办法,有人会建议另一种方法吗?

2 个答案:

答案 0 :(得分:9)

使用Html Agility Pack附带的HtmlWeb类,您可以在实际执行之前调整请求,如下所示:

    HtmlWeb web = new HtmlWeb();
    web.PreRequest = OnPreRequest;
    HtmlDocument doc = web.Load("http://wwwblablahh.com");


private static bool OnPreRequest(HttpWebRequest request)
{
    request.AllowAutoRedirect = true;
    return true;
}

答案 1 :(得分:5)

创建HttpWebRequest时,您可以将AllowAutoRedirect属性设置为true,它会自动跟踪您的重定向。

HttpWebRequest myHttpWebRequest = (HttpWebRequest)WebRequest.Create("http://www.contoso.com");  
myHttpWebRequest.MaximumAutomaticRedirections=1;
myHttpWebRequest.AllowAutoRedirect=true;
HttpWebResponse myHttpWebResponse=(HttpWebResponse)myHttpWebRequest.GetResponse(); 

您可以在msdn

找到更多信息