.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ループをネストしている場合は、iを2回使用せず、そのうちの1つにはjを使用してください。
これがあなたの質問に答えるか、あなたの問題を解決するためにもっと私ができることがあれば教えてください。
使用しているコーディング環境に関するヒントはありますか? C#、winforms? – ChrisBD
C#winforms、申し訳ありません。 – TheGateKeeper
あなたが探している問題のあるHTMLと実際の文字列を表示できますか? – Ryan