2015-08-30 42 views
2

我想從舊的http://www.printprint.ca網站在108.170.59.213(我有這在我的主機文件中)的元標記,但似乎無法得到任何東西DocumentNode。 舊網站似乎302重定向到同一頁面,並打破所有爬蟲像Xenu,ScreamingFrog,BeamUsUp ... 在inital 302到同一頁後,它與200響應,但我不知道如何使HtmlAgilityPack拿起在那。 我試過增加這個:Html敏捷包與302重定向到相同的頁面

web.PreRequest = OnPreRequest; 

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

回答

0

我知道這個老。但既然沒有答案,我可能會輸入我的解決方案。

public static void Main(string[] args) 
{ 
    HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); 
    try 
    { 
     HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.printprint.ca "); 
     request.Method = "GET"; 
     request.ContentType = "text/html;charset=utf-8"; 

     using (var response = (HttpWebResponse)request.GetResponse()) 
     { 

      using (var stream = response.GetResponseStream()) 
      { 
       doc.Load(stream, Encoding.GetEncoding("utf-8")); 
      } 
     } 
    } 
    catch (WebException ex) 
    { 
     Console.WriteLine(ex.Message); 
    } 
    HtmlNodeCollection metas = doc.DocumentNode.SelectNodes(".//meta"); 
    foreach(HtmlNode meta in metas) 
    { 
     Console.WriteLine(meta.OuterHtml); 
     Console.WriteLine(); 
    } 
    Console.ReadKey(); 
}