誰かが C# の Agility で Html の連続タグを解析する際の問題を解決するのを手伝ってくれませんか? 以下にリストされているように、2つの質問があります。
この場合、次の Html を解析し、それらを構造体 (リスト、スタックなど) に格納して、これらのデータを効果的に使用できるようにします。
<h3> header </h3>
<p> paragraph 1</p>
<p>
<a href="www.google.com">Google</a>
<a href="www.gizmodo.com">Gizmodo</a>
</p>
<ul>
<li> something is here with a download
<a href="www.google.com">link</a>
</li>
<li> hello
<img src="www.imagesource.com"/>
</li>
</ul>
これらのデータを順次解析する方法は?
を使用する
var ParaTags = HtmlDocument.DocumentNode.Descendants("p");
と、すべての「p」タグしか取得できません。しかし、「p」は「h3」内にないため、「h3」、「p」の順に取得する方法がわかりません。
次のコードは、すべてのハイパーリンクを返します。
var links =
from paras in document.DocumentNode.Descendants("p")
from hyperLinks in paras.Descendants("a").Where(x => x.Attributes["href"].Value != "")
select hyperLinks;
- 文字列、ハイパーリンク、画像が混在するこれらのコンテンツを解析して保存する最善の方法は何ですか? 後で効率的に出力できますか?リスト、スタック?別の言い方をすれば、html から可能なすべてのコンテンツを保存し、可能であればその形式を予約したいと考えています。そのため、アプリにリロードすると、コンテンツを適切な形式で類似させることができます。
ありがとうございました!