讓我爲您提供一個更好的方式來做到這一點,而不使用.DocumentText並且必須解析所有這些字符串erk。
如果wbMain是您的WebBrowser1控件,請執行以下操作。
首先,您需要獲取您的元素的參考,假設您想訪問第一個<A>
鏈接,在您的頁面上,您可以循環遍歷所有內容。
這是在VB中,但它在C#中的相同類型的東西,只是不同的語法。
Dim i As Integer
Dim aElement As HTMLAnchorElement = wbMain.Document.All.getElementByTagName("A")(0)
For i = 0 To aElement.attributes.length - 1
MsgBox aElement.attributes.item(i).name & "=" & aElement.attributes.item(i).value
Next i
這將遍歷所有屬性並以name=value
格式顯示在MSGBOX中。
如果您想通過名稱(屬性名稱)檢索它,只需使用aElement.getAttribute("target")
來調用以從鏈接中檢索目標屬性值。
如果您想確認自己是否擁有正確的對象/元素,只需執行aElement.outerHTML
即可獲取該元素的完整HTML代碼。
因爲我使用的是pre.NET版本,所以如果您想要瀏覽頁面上的所有元素,可以隨意將聲明從HTMLAnchorElement更改爲IHTMLAnchorElement,如果它給您帶來麻煩,當然,您可以使用IHTMLElement,那麼所有你需要做的是wbMain.Document.All(0)爲頁面上的第一個元素,或者循環直到.All.length - 1遍歷全部。請記住,如果您使用嵌套的For循環,請勿使用兩次,使用j作爲它們中的一個:)。
讓我知道這是否回答你的問題,或者如果有更多的事情可以幫助你解決問題。
有關您正在使用哪種編碼環境的任何提示? C#,winforms? – ChrisBD 2012-02-29 15:21:04
c#winforms,對不起。 – TheGateKeeper 2012-02-29 15:27:43
你能告訴我們有問題的HTML和你正在尋找的實際字符串嗎? – Ryan 2012-02-29 15:30:27