Вопрос

Как я могу отсканировать html-страницу на предмет текста в определенном div?

Это было полезно?

Решение

Самым простым способом сделать это было бы использовать Простой анализатор HTML DOM

// Create a DOM object from a URL
$html = file_get_html('http://www.google.com/');    

// Find all <div> which attribute id=foo
$ret = $html->find('div[id=foo]');

Другие советы

Вы также можете сделать это с помощью DOMDocument класс.

Использование довольно прямолинейно:

$dom = new DOMDocument();
$dom->loadHTML(file_get_contents($url));

// Example:
$dom->getElementById('foo');

Документация является здесь.

Пример использования в реальном мире можно найти здесь.

Вы могли бы использовать встроенную функциональность, как предлагали другие, или вы могли бы попробовать Простой синтаксический анализатор HTML DOM, реализованный в виде простого PHP-класса и нескольких вспомогательных функций.Он поддерживает очистку экрана в стиле CSS-селектора (например, в jQuery), может обрабатывать недопустимый HTML и даже предоставляет знакомый интерфейс для управления DOM.

Это стоит проверить на http://simplehtmldom.sourceforge.net/

preg_match() чтобы соответствовать нужной вам подстроке, используйте dom / xml.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top