Skip to main content

PhpQuery парсер сайтов

PhpQuery парсер сайтов

phpQuery одна из самых популярных библиотек для парсинга сайтов. Она довольно быстрая и разобраться в ней не сложно, особенно если вы знакомы с ее старшим братом JavaScript библиотекой jQuery.

phpQuery основана на DOM, и в ней так же как и в jQuery используются селекторы, атрибуты, события и др.

Для начала необходимо скачать саму библиотеку отсюда или отсюда. Там же вы найдете документацию для разработчиков.

И подключить ее в файле .php:

include_once 'phpQuery.php';

Теперь попробуем получить и вывести текст из блока с определенным классом с какого-то сайта:

<?php
include_once 'phpQuery.php';

$link = file_get_contents('http://site.ru/'); // Указываем ссылку на сайт
$document = phpQuery::newDocument($link);
$div = $document->find('div.text'); // Ищем нужный тег
$text = $div->html(); // Получаем содержимое

echo $text;
?>

Как видите все достаточно просто. Теперь полученными данными можно манипулировать как угодно.

Краткий список основных методов, которые вам пригодятся:

<?
$div->html(); // Получить HTML содержимое
$div->text(); // Получить текст
$div->remove(); // Удалить элемент
$div->find('a'); // Найти вложенный элемент
$div->prepend('a'); // Добавить в начало
$div->attr('href'); // Получить атрибут
$div->attr('href', 'http://site.ru'); // Изменить атрибут
$div->wrap('<div class="new">'); // Обернуть снаружи
$div->wrapInner('<div class="new">'); // Обернуть внутри
?>

Если вы ищете не один, а несколько элементов, то они будут оформлены в массив. Например найти все ссылки на странице и вывести их по одной:

<?php
include_once 'phpQuery.php';

$link = file_get_contents('http://site.ru/'); // Указываем ссылку на сайт
$document = phpQuery::newDocument($link);
$links = $document->find('a'); // Ищем все ссылки

foreach ($links as $singleLink) {
    echo $singleLink;
}
?>
Похожие записи
Удалить значение из массива на PHP

Удалить значение из массива по ключу на PHP довольно простая задача, но вот когда необходимо... Читать далее

Создание чат-бота для Viber

В этой статье рассмотрим как создать простого чат-бота для Viber, который будет принимать и отправлять... Читать далее

Регулярные выражения PHP: preg_match, preg_split, preg_replace

Регулярные выражения - это мощный алгоритм сопоставления с образцом, который может быть выполнен в одном... Читать далее

Парсер XML PHP с использованием SimpleXML. Примеры

Существует несколько способов парсить XML-данные с использованием PHP, один из которых - SimpleXML. В предыдущей... Читать далее

Интеграция/чтение RSS PHP. PHP скрипт вывода RSS

В PHP начиная с 5 версии есть встроенная библиотека для работы с XML данными SimpleXML.... Читать далее

Отправка письма с вложениями на PHP и AJAX

Мы уже рассматривали, как сделать форму обратной связи на PHP и Ajax. Сегодня мы модернизируем... Читать далее

Комментарий “PhpQuery парсер сайтов”

Добавить комментарий

*

code