【问题标题】:get a data with HTMLagilitypack from a span 2从跨度 2 中获取带有 HTMLagilitypack 的数据
【发布时间】:2014-03-02 13:16:22
【问题描述】:

我想使用 HtmlAgilityPack 从网站中获取一些数据。数据存储在属性为 class="vcard-content" 的对象中。但是我想知道的问题是有什么方法可以从具有该值的特定类中获取这些数据,使用“Start with”或“Contained..”或类似的东西? 我只想获取电话号码和电子邮件

HTML 代码:

<span>

    <img alt="09122270931" src="../img/profile/icon03.png"></img>

    Phone Number : 09122270931

</span>
<span>

    <img alt="persian8008@yahoo.com" src="../img/profile/icon07.png"></img>

    Email: persian8008@yahoo.com

</span>

我使用这个代码,但它返回空值。

HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//div[@class='vcard-content' and contains(text, 'Phone Number :')]/span/text()");

HtmlNodeCollection nodes = doc.DocumentNode.SelectNodes("//div[@class='vcard-content' and (starts-with(normalize-space(), '@'))]/span/text()"); 

【问题讨论】:

    标签: c# html .net xpath html-agility-pack


    【解决方案1】:

    你可以试试这个 XPath 查询:

    "//div[@class='vcard-content']/span[contains(., 'Phone Number :')]/text()"
    

    这将搜索 &lt;div&gt; 元素,其 class 属性值等于“vcard-content”,并且具有包含文本“电话号码:”的子 &lt;span&gt; 元素,然后选择该 &lt;span&gt; 内的文本。您可以使用类似的结构来搜索包含“电子邮件:”的&lt;span&gt; 元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      • 2012-10-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-06-05
      • 1970-01-01
      相关资源
      最近更新 更多