LINQとHtmlAgilityPackを使用してhtmlテーブルを解析する

c# html-agility-pack linq

質問

私は、Webページhttp://cslh.cz/delegace.html?id_season=2013で日付、リンクテキスト、リンクhrefをテーブルクラス= 'nice'から解析したい

私はオブジェクトDelegationLinkを作成しました

public class DelegationLink
{
   public string date { get; set; }
   public string link { get; set; }
   public string anchor { get; set; }
}

DelegationLinkのリストを作成するためにLINQと共に使用しました

public class DelegationLink
{
   public string date { get; set; }
   public string link { get; set; }
   public string anchor { get; set; }
}

これは、日付列onyを1つずつ取ると、すべての行のリンク列と組み合わせるだけですが、私は単にテーブルのすべての行を取って、その行から日付、hrefとhreftextを取得したいです。私はLINQには新しく、私は何の効果もなく4時間Googleを使いました。助けてくれてありがとう。

受け入れられた回答

それはむしろ簡単ですSelectNodes関数呼び出しでtrを選択してコードを少し調整するだけです。このようなもの。

var parsedValues = htmlDoc.DocumentNode.SelectNodes("//table[@class='nice']/tr").Skip(1)
.Select(r =>
      {
        var linkNode = r.SelectSingleNode(".//a");
        return new DelegationLink()
                  {
                    date = r.SelectSingleNode(".//td").InnerText,
                    link = linkNode.GetAttributeValue("href",""),
                    anchor = linkNode.InnerText,
                  };
      }
);
return parsedValues.ToList();



ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ
ライセンスを受けた: CC-BY-SA with attribution
所属していない Stack Overflow
このKBは合法ですか? はい、理由を学ぶ