Ich versuche, kurze, kleine Flecken von der Seite zu ziehen (lol).
HTML von dem, was ich versuche zu ziehen, ist unten.
<div class="field field-name-field-body-medium field-type-text-long field-label-hidden">
The community comics collaboration is back for another heaping helping of Academy fun!
</div>
Code, den ich gerade benutze, funktioniert nicht.
var shortBio = doc.DocumentNode.Descendants("div").Where(p => p.Attributes.Contains("class") && p.Attributes["class"]
.Value.Contains("field field - name - field - body - medium field - type - text - long field - label - hidden"));
for (int i = 0; i < 5; i++)
{
blurbs[i] = shortBio.ElementAt(i).ToString();
}
offensichtlich funktioniert das nicht und ich bin nicht sicher, wie man den Text zieht. Ich finde immer Informationen über das Ziehen
Vielen Dank im Voraus.
Sieht so aus, als ob der Elternteil deines div
teaser-content
der Klasse ist, der ein guter Bezeichner sein kann. Der folgende XPath sollte das gewünschte div
:
//div[@class='teaser-content']/div
Dann können Sie beispielsweise den Inhaltstext des div
aus der InnerText
(ersetzen Sie SelectSingleNode()
durch SelectNodes()
und durchlaufen Sie das Ergebnis, wenn Sie alle div
s anstatt nur des ersten möchten):
var doc = new HtmlWeb().Load("http://na.leagueoflegends.com/en/news/");
var div = doc.DocumentNode.SelectSingleNode("//div[@class='teaser-content']/div");
Console.WriteLine(div.InnerText);
Ausgabe :
The community comics collaboration is back for another heaping helping of Academy fun!