Разбор / выскабливание проблема с simplehtmldom - PullRequest
0 голосов
/ 04 января 2012

Я пытаюсь использовать simplehtmldom для анализа веб-страницы с большим количеством тегов li.

Я бы хотел извлечь только внутренний текст для конкретного тега <li class='ev_td_li c5'>, который встречается в следующем фрагменте:

<li class='ev_td_li c5'>10:00  
    <a class="ev_link_row c3" href="/fr/quoi-faire-a-sutton/programme-activites-sutton/calendrier-hebdomadaire/icalrepeat.detail/2012/01/01/13918/-/NTNkZDVjNzNiNzE1YTBmM2VhZjMyZjljNmU0ODFiNjQ=.html"
        title="Marche du 2012">Marche du 2012</a>::  
    <a class="ev_link_cat c4" href="/fr/quoi-faire-a-sutton/programme-activites-sutton/calendrier-hebdomadaire/week.listevents/2012/01/02/122.html"
        title="Outdoor, Sporting Events ">Outdoor, Sporting Events</a>
</li>

Если я использую следующий код, я получаю все теги 'li':

foreach($html->find('li') as $e){
 echo $e->innertext . '<br>';

Но если я пытаюсь добавить класс, как показано ниже, я не получаю никакоговывод:

foreach($html->find('li.ev_td_li c5') as $e){
    echo $e->innertext . '<br>';

Мне интересно, является ли пробел в 'li.ev_td_li c5' проблемой.

Кто-нибудь знает, что я делаю не так?Спасибо Эллиот

1 Ответ

0 голосов
/ 04 января 2012

Попробуйте li.ev_td_li.c5 (обратите внимание на . перед с5) вместо этого. Если у вас есть 'li.ev_td_li c5 (обратите внимание на пробел), он интерпретируется как «тег <li> класса ev_td_li, за которым следует тег <c5>».

...