2012-09-30 58 views
2

在控制檯應用程序中,我需要捕捉輸出。有2種情況:在C中捕捉網頁瀏覽器輸出#

  • 互聯網無法顯示網頁
  • 互聯網工作。

我使用下面的代碼

using(WebClient client = new WebClient()) 
{ 
    string pageData; 
    try 
    { 
     pageData = client.DownloadString("https://google.com"); 
    } 
    catch (HttpListenerException e) 
    { 
     Console.WriteLine("Exception is" + e); 
    } 

在這裏,我需要申請一個條件,如果Internet Explorer顯示「Internet Explorer無法顯示該網頁」,那麼它應該顯示沒有任何聯繫。我需要捕獲輸出。

+0

您可以解析字符串以查看所需的文本是否存在。 – Tim

+0

是否要下載網頁內容或檢查互聯網連接? BTW'DownloadString'不會拋出'HttpListenerException'異常。 – Nasreddine

+0

我需要檢查連接,它實際上需要檢查服務器是否啓動。我將進入負載平衡器URL並檢查IE瀏覽器顯示是否顯示不了網頁意味着服務器已關閉 – Sohail

回答

0

您需要捕獲Web客戶端因任何原因無法下載頁面時引發的WebException。試試這個:

public static bool IsAlive(string url) 
{ 
    bool isAlive = false; 
    using (WebClient client = new WebClient()) 
    { 
     try 
     { 
      var content = client.DownloadString(url); 
      // if we got this far there was no error fetching the content 
      isAlive = true; 
     } 
     catch (WebException ex) 
     { 
      // could not fetch page - can output reason here if required 
      Console.WriteLine("Error when fetching {0}: {1}", url, ex); 
     } 

    } 

    return isAlive; 
} 

有關更多詳細信息,請參閱MSDN上的WebClient文檔。