0

以下の値を抽出したい C# のコードがあります (以下の HTML コードの「I want this text」というテキスト)。読みやすいように HTML コードを再フォーマットしました。

<div class="paste-copy-url" style="margin:0 0 0 0;">
    <h4>My Stats:</h4>
    <div class="line">
        <div class="wrap-input">
            <input onclick="this.select();" value="I want this text" readonly="readonly">
        </div>
    </div>
    <h4>Website Link:</h4>
    <div class="line">
        <div class="wrap-input"><input onclick="this.select();" value="Some value" readonly="readonly">
        </div>
    </div>
</div>

私が試したコード(テキスト「Website Link:」が表示されます):

var myvaluetoextract = htmlDocument.DocumentNode.SelectSingleNode("//div[@class='paste-copy-url']");

私は何を間違っていますか?このアプローチを使用してその要素を取得できますか (ページには div クラスのインスタンスが 1 つしかありません)。

4

2 に答える 2

4
var input = htmlDocument.DocumentNode
           .SelectSingleNode("//div[@class='paste-copy-url']//div[@class='wrap-input']/input");
var yourText = input.Attributes["value"].Value;
于 2013-10-07T09:47:12.183 に答える
0

次のように実行できます。

var myvaluetoextract = htmlDocument.DocumentNode.SelectSingleNode("//div[@class='paste-copy-url']//input");
var value = myvaluetoextract.GetAttributeValue("value", null);

//inputのサブツリーinput内の要素を再帰的に検索することを意味します。属性が存在しなくても失敗することのないヘルパーです (この場合、渡された 2 番目のパラメーターが返されます。これはここにあります) 。divGetAttributeValuenull

于 2013-10-07T09:51:06.247 に答える