2017-01-16 4 views
-1
<div class="vcard-names-container py-3 js-sticky js-user-profile-sticky-fields " style="position: static;"> 
    <h1 class="vcard-names"> 
    <span class="vcard-fullname d-block" itemprop="name">Name 001</span> 
    <span class="vcard-username d-block" itemprop="additionalName">Name 002</span> 
    </h1> 
</div> 

Hallo, würde Ich mag wissen, wie die Namen dieser Struktur abzurufen (‚Name 001‘ und ‚Name 002‘) ich mehrere Tests tat, aber ich konnte diese Werte nicht analysieren Wie erreiche ich das?Get Wert eines Attributs von HtmlAgilityPack

(Hinweis: Sorry für mein schlechtes Englisch)

+0

Duplikate zeigt, wie Sie Attribut erhalten, wie Sie gefragt haben, aber basierend auf Körper des Beitrags Sie wahrscheinlich Text eines Elements eher als Wert des Attributs eines Elements benötigen. In diesem Fall wäre http://stackoverflow.com/questions/4358696/how-to-get-the-contents-of-a-html-element-using-htmlagilitypack-in-c die Antwort. –

Antwort

0

Sie XPath verwenden können, um die Dokumentknoten abfragen, um die Knoten, die Sie suchen zu finden: Sie

static void Main(string[] args) 
{ 
    var html = @"<div class=""vcard - names - container py - 3 js - sticky js - user - profile - sticky - fields "" style=""position: static; ""> 
      < h1 class=""vcard-names""> 
      <span class=""vcard-fullname d-block"" itemprop=""name"">Name 001</span> 
      <span class=""vcard-username d-block"" itemprop=""additionalName"">Name 002</span> 
      </h1> 
     </div>"; 

    HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); 
    doc.LoadHtml(html); 

    var names = doc.DocumentNode.SelectNodes("//span").Select(x => x.InnerText); 
    foreach (var name in names) 
    { 
     Console.WriteLine(name); 
    } 
    Console.ReadLine(); 
} 
0

Dies könnte den Trick

HtmlDocument doc = new HtmlDocument(); 
doc.Load(YourHTMLFile); 
foreach(HtmlNode Spans in doc.DocumentNode.SelectNodes("//span")) 
{ 
    Console.WriteLine(Spans.InnerText); 
} 
Verwandte Themen