2015-11-26 3 views
1

У меня есть страница HTML с этим кодомПолучить текст внутри диапазона

<span class="titoloSerie" style="font-size: 40px; color: #000000;">SHOW NAME</span> 

Я хочу, чтобы получить «SHOW NAME». Я пробовал следующий код, но он не работает:

var div = doc.DocumentNode.SelectNodes("//span[@class='titoloSerie']"); 

Компилятор Прерываниям говоря «ДИВ равно нулю» (ок, я не обработал исключение, но я знаю, что это).

Следующий код:

List<string> pageTitles = new List<string>(); 
foreach (var title in div) 
{ 
    pageTitles.Add(title.InnerText); 
} 

Компилятор завершает работу в цикле Еогеасп в «DIV» говорят, что это нуль.

+0

Если я проверить вашу строку выборки я получаю "SHOW NAME":. 'Div.First() InnerText' или' doc.DocumentNode. SelectSingleNode ("// span [@ class = 'titoloSerie']"). InnerText' –

+0

Допустим, у меня есть тонны Я не могу использовать SelectSingleNode, мне все они нужны – Weizen

+0

Я пробовал ваш код, и он отлично работает , Правильно ли загружена ваша HTML-страница? – krlzlx

ответ

1

Попробуйте это:

var rigaStagioneSerie = document.DocumentNode.SelectNodes("//td[@class='rigaStagioneSerie']"); 
List<string> pageTitles = new List<string>(); 

foreach (var title in rigaStagioneSerie) 
{ 
    if (title.ChildNodes.Count == 1) 
    { 
     pageTitles.Add(title.InnerText.Replace("\n", string.Empty).Replace("\t", string.Empty)); 
    } 

} 

var titoloSerie = document.DocumentNode.SelectNodes("//span[@class='titoloSerie']"); 

foreach (var title in titoloSerie) 
{ 
    pageTitles.Add(title.InnerText); 
} 

Попробуйте здесь: .NET Fiddle

+0

Исправлено, спасибо! – Weizen

Смежные вопросы