C # htmlagility pack, захват redirct

c# html-agility-pack

Вопрос

HI все, это действительно просто (я надеюсь). Я использую htmlagility pack для выполнения моего веб-поиска. Итак, что произойдет, если я буду вводить url независимо от того, что затем направляет меня на новый URL-адрес, как я могу захватить этот новый перенаправленный URL-адрес?

Если пакет htmlagility не имеет способа, может ли кто-нибудь предложить другой метод?

Принятый ответ

Когда вы создаете свой HttpWebRequest, вы можете установить свойство AllowAutoRedirect true, и оно будет автоматически следовать за любыми перенаправленными вами.

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

вы можете найти дополнительную информацию в msdn


Популярные ответы

Используя класс HtmlWeb, который поставляется с Html Agility Pack, вы можете настроить запрос до его фактического выполнения, например:

    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;
}


Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему
Лицензировано согласно: CC-BY-SA with attribution
Не связан с Stack Overflow
Является ли этот КБ законным? Да, узнайте, почему