Легкий парсинг с помощью phpQuery

1.71K
.
Кадило крутится, лавэха мутится
# ValekS (13.04.2014 / 18:34)
Я сразу подумал тут сам JQuery будет использоваться) Потом понял что тут JQuery на пхп))) Т.Е. используется пхп, но так словно это JQuery.
Ну jquery тут использовать не получится))) JQuery все таки Java script фреймворк и исполняется только в браузере))
.
Спасибо)) очень полезно
.
-=ВДРЕБЕЗГИ=-
# ValekS (13.04.2014 / 18:18)
Что там показывать... Запрос в БД не знаешь как выглядит?
нет))))))))))))))
.
а как, например, получить ссылку на обсужение?
.
echo $pq->find('a')->attr('href') возвращает такое: ../forum/?id=829621
а полный путь как получить?
.
Ей 25
# Vynder (13.04.2014 / 19:39)
echo $pq->find('a')->attr('href') возвращает такое: ../forum/?id=829621
а полный путь как получить?
Ну так оно выдает то что написано) Добавь урл сайта к этому пути и все.
.
действительно. невнимательно смотрел.
.
Еще один простой пример. Парсим главную форума + подкатегории. Действительно, все очень удобно
<?
require_once 'phpQuery.php';

$content = file_get_contents('http://johncms.com/forum/index.php');

$document = phpQuery::newDocument($content);

$list_elements = $document->find('.list1, .list2');

foreach ($list_elements as $element)
{
    
    $pq = pq($element);

    $pq->find('.sub')->remove();
    echo '<b>'.$pq->text().'</b><br />';
    
    $forum = file_get_contents('http://johncms.com/forum/'.$pq->find('a')->attr('href'));
    $document = phpQuery::newDocument($forum);
    $list_elements1 = $document->find('.list1, .list2');
     foreach ($list_elements1 as $element1)
    {
        $pq1 = pq($element1);
        $pq1->find('.sub')->remove();
        echo $pq1->text().'<br />';
        }
}
.
Ей 25
В защиту обычного парсинга скажу, что без использования этого класса тоже легко спарсить те же Джоновские новости. Результат будет один в один и так же минимум кода)
.
(\/)____o_O____(\/)
а так можно? #list1
Всего: 30