C# HTMLNode 正确获取 div 的 innerText
C# HTMLNode get correctly innerText of div
我正在尝试正确提取从网站获取的 div 列表的 innerText。
这是我想出的,但仍然有点问题,因为它缺少空格和 - 符号。
var first = mainmenuTitles[x].Descendants("div").FirstOrDefault(o => o.GetAttributeValue("class", "") == "left").Elements("a").ToList();
string final = "";
foreach (var countfirst in first)
{
final += countfirst.InnerText;
}
Console.WriteLine("Tittle: " + final);
这就是 html 代码的样子
<div class="row row-tall mt4">
<div class="clear">
<div class="left">
<a href="/soccer/italy/">
<strong>Italy</strong>
</a>
-
<a href="/soccer/italy/lega-pro-group-b/">Serie C:: group B</a>
</div> <div class="right fs11"> March 31 </div> </div> </div>
我尝试获取的文本应该如下所示 ->
意大利 - 意甲 C:: B 组
我不是 html 大师,所以如果它太简单而我错过了,请原谅我。
您可以编写查询以使用 xpath //div/a
查找所有节点,然后连接内部文本以获得您要查找的文本。确保 trim 文本去掉多余的空格和 returns.
Console.WriteLine(string.Join(" - ", doc.DocumentNode.SelectNodes("//div/a").Select(x => x.InnerText.Trim())));
输出:
Italy - Serie C:: group B
旁注...您可以使用不同的查询来确保通过使用 class 的名称来确保获得正确的 div。例如.SelectNodes("//div[@class='row row-tall mt4']/a");
。这将为您提供 div.
下的所有 <a>
标签
我正在尝试正确提取从网站获取的 div 列表的 innerText。
这是我想出的,但仍然有点问题,因为它缺少空格和 - 符号。
var first = mainmenuTitles[x].Descendants("div").FirstOrDefault(o => o.GetAttributeValue("class", "") == "left").Elements("a").ToList();
string final = "";
foreach (var countfirst in first)
{
final += countfirst.InnerText;
}
Console.WriteLine("Tittle: " + final);
这就是 html 代码的样子
<div class="row row-tall mt4">
<div class="clear">
<div class="left">
<a href="/soccer/italy/">
<strong>Italy</strong>
</a>
-
<a href="/soccer/italy/lega-pro-group-b/">Serie C:: group B</a>
</div> <div class="right fs11"> March 31 </div> </div> </div>
我尝试获取的文本应该如下所示 -> 意大利 - 意甲 C:: B 组
我不是 html 大师,所以如果它太简单而我错过了,请原谅我。
您可以编写查询以使用 xpath //div/a
查找所有节点,然后连接内部文本以获得您要查找的文本。确保 trim 文本去掉多余的空格和 returns.
Console.WriteLine(string.Join(" - ", doc.DocumentNode.SelectNodes("//div/a").Select(x => x.InnerText.Trim())));
输出:
Italy - Serie C:: group B
旁注...您可以使用不同的查询来确保通过使用 class 的名称来确保获得正确的 div。例如.SelectNodes("//div[@class='row row-tall mt4']/a");
。这将为您提供 div.
<a>
标签