c# - 如何使用带有 htmlagilitypack 的样式信息来抓取内部文本
问题描述
我想抢里面的销售号码style="vertical-align: inherit;"
。请检查我已经尝试抓住它,但这会返回 null。我该如何解决?请注意我正在使用 htmlagilitypack。
我已经尝试过的:
var SoldNumber = htmlDoc.DocumentNode.SelectNodes("//font[contains(@style,'vertical-align: inherit;')]").ElementAt(0).InnerText;
html:
<div class="item-conditions"><font style="vertical-align: inherit;"><font style="vertical-align: inherit;">
New - 14 sold
</font></font>
</div>
解决方案
这是我尝试并获得所需的输出。
string text = @"
<div class=""item - conditions""><font style=""vertical-align: inherit;""><font style=""vertical-align: inherit;"">New - 14 sold</font></font>
</div>";
HtmlDocument doc = new HtmlDocument();
doc.LoadHtml(text);
var htmlNode = doc.DocumentNode.SelectNodes("//font[@style='vertical-align: inherit;']");
Console.WriteLine(htmlNode.First().InnerText);
区别:我所做的是删除了 XPath 查询中的“包含”。简单地使用,//font[@style='vertical...]
为您提供所有可能性的数组。使用其中任何一个来获取 InnerText 将为您提供您正在寻找的文本。
// output: New - 14 sold
推荐阅读
- c - 如何从c中的位读取char?
- azure - Azure - 如何创建仪表板图来监控来自本地源 IP 的流量?
- c# - 移动任务栏图标
- php - 如何创建自定义 laravel 电子邮件模板?
- angular - Primeng p-table 通过快速滚动在 virtualscrolling 中重新排序项目
- apache-kafka - 如何使用 Flume 向 kafka 生产者发送键、值消息
- azure-functions - azurite 是否支持 CloudTable?
- java - 语义分析期间的一般错误:不支持的类文件主要版本 57
- javascript - 如果在浏览器上发生更改,请删除 cookie
- azure - 在 AKS 上与 Statefulset 共享 Azure 文件存储