2012-07-02 147 views
0

我正在C#中構建一個應用程序來從我的銀行帳戶中檢索信息。到目前爲止,我可以連接到我的銀行帳戶https://accesd.desjardins.com。我先輸入我的卡號,然後輸入另一頁上的密碼。就像這樣:如何使用C#獲取頁面的html源代碼?

private void newweb_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) 
    { 
     switch (iStages) 
     { 
      case 1: 
       newweb.Document.GetElementById("card_num").SetAttribute("value", strCardNum); 
       newweb.Document.GetElementById("ch_but_logon").InvokeMember("click"); 
       iStages = 2; 
       break; 
      case 2: 
       newweb.Document.GetElementById("passwd").SetAttribute("value", psswd); 
       newweb.Document.GetElementById("ch_but_logon").InvokeMember("click"); 
       iStages = 3; 
       break; 
     } 

    } 

但是,一旦我爲我的銀行帳戶頁面上,我不能不再使用newweb.Document.GetElementById(..)來檢索任何HTML標記或元素。我想獲得我的總金額。但是當我嘗試獲取頁面的任何元素時,我總是得到一個空元素。當我試圖在Chrome上獲取頁面的HTML源代碼時,我得到了一個頁面的html源代碼,表示我沒有權限查看頁面的源代碼(這是我的銀行帳戶的源代碼) 。我想知道如何用C#以任何方式獲取源代碼。由於瀏覽器可以顯示網頁,因此確實有這樣做的方法。它必須閱讀的源代碼,以顯示它...

感謝

回答

1

這是你在找什麼:

mshtml.HTMLDocument htmlDoc = (mshtml.HTMLDocument)wb.Document.DomDocument; 
var yourValue = htmlDoc.getElementById("[SomeID"); 
+0

我仍然收到頁面​​的HTML源代碼,說我沒有權限!有點奇怪。 – yhcowboy

0

我以前碰到類似的事情。您需要確保您發送每個Web請求的cookies。銀行存儲用作您登錄的標誌的cookie。另外,連接使用SSL,因此請確保您在代碼中考慮了這一點。

相關問題