【发布时间】:2018-11-13 20:08:20
【问题描述】:
我正在尝试选择第一个标签并获取 href 值。但问题是我正在使用 SelectNodes。
这是我要从中选择 href 值的代码:
<li>
<a class="img" href="link1"></a>
<div class="m_text">
<a class="title" href="link2" rel="27418">A Story</a>
<p><span class="stars star45"></span><span class="rate">4.35</span></p>
<p class="info" title="Action"></p>
<p class="nowrap latest"><a href = "link3" >< span class="nowrap">A Story</span> 29</a></p>
</div>
</li>
<li>
<a class="img" href="link1"></a>
<div class="m_text">
<a class="title" href="link2" rel="27418">A Story</a>
<p><span class="stars star45"></span><span class="rate">4.35</span></p>
<p class="info" title="Action"></p>
<p class="nowrap latest"><a href = "link3" >< span class="nowrap">A Story</span> 29</a></p>
</div>
</li>
现在如你所见,我必须多次选择标签的第一个 href 值,然后我将使用 foreach。
我想要获取价值的 html 是:
<a class="img" href="link1"></a>
我的代码:
var documentx = new HtmlWeb().Load(post.ExtLink);
var div = documentx.DocumentNode.SelectNodes("//div[@id='content']/*//ul[@class='list']//li");
var test = div.Descendants("a")
.Select(a => a.GetAttributeValue("href", null))
.Where(s => !String.IsNullOrEmpty(s))
.ToList();
我的代码工作正常,但它获取了所有的 a 标签值,我只希望获得第一个 a 标签的 href 值。
【问题讨论】:
标签: c# asp.net-mvc html-agility-pack