Простой HTML Dom Parser, Больше Горе - PullRequest
0 голосов
/ 24 июля 2010

Я использую PHP Simple HTML DOM Parser, чтобы получить число 3869 со страницы HTML. Я попробовал это и несколько других вариантов.

foreach($html->find('span[class=searchresults_tab_number]') as $element) {
            echo $element->innertext . '<br />';
}

Но я ничего не получаю! Все, что мне нужно, это номер из set1, как я могу сопоставить это?

<div class="local-tabs">
    <div class="local-tab active">Set1 <span class="searchresults_tab_number">(3869)</span></div>
    <div class="local-tab"><a href="#">Set2 <span class="searchresults_tab_number">(1)</span></a></div>
    <div class="local-tab"><a href="#">Set3 <span class="searchresults_tab_number">(3870)</span></a></div>
</div>

Спасибо всем за помощь

Обновление

Я только что понял, что эти элементы создаются с помощью javascript, это имеет значение?

tabs.insert("<div class='local-tab active'>Set1 <span class='searchresults_tab_number'>(3869)</span></div>");

Ответы [ 2 ]

2 голосов
/ 24 июля 2010

javascript не выполняется при очистке страницы, поэтому php не может его обработать, если он генерируется с помощью javascript.JavaScript выполняется браузером.

0 голосов
/ 24 июля 2010

http://gist.github.com/488815

Представленная выше суть, кажется, работает нормально, я получаю результат, который можно было бы ожидать. Может ли быть что-то не так с кодом до этого? У вас есть более полный образец?

В ответ на обновленный вопрос: я очень озадачен тем, что вы делаете ... откуда PHP получает DOM? Если div созданы в Javascript, PHP не будет знать о них. Он не выполняет JavaScript, который является частью содержимого HTML.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...