Веб-скребок в PHP

Я ищу способ сделать небольшой предварительный просмотр другой страницы с URL-адреса, заданного пользователем на PHP .

Я бы хотел получить только название страницы, изображение (например, логотип сайта) и немного текста или описания, если оно доступно. Есть ли простой способ сделать это без каких-либо внешних библиотек / классов? благодаря

До сих пор я пытался использовать класс DOCDocument, загружать HTML и отображать его на экране, но я не думаю, что это правильный способ сделать это

Я рекомендую вам рассмотреть simple_html_dom для этого. Это будет очень легко.

Вот рабочий пример того, как вытащить заголовок и первое изображение.

 <?php require 'simple_html_dom.php'; $html = file_get_html('http://www.google.com/'); $title = $html->find('title', 0); $image = $html->find('img', 0); echo $title->plaintext."<br>\n"; echo $image->src; ?> 

Вот второй пример, который будет делать то же самое без внешней библиотеки. Я должен отметить, что использование регулярного выражения на HTML НЕ является хорошей идеей.

 <?php $data = file_get_contents('http://www.google.com/'); preg_match('/<title>([^<]+)<\/title>/i', $data, $matches); $title = $matches[1]; preg_match('/<img[^>]*src=[\'"]([^\'"]+)[\'"][^>]*>/i', $data, $matches); $img = $matches[1]; echo $title."<br>\n"; echo $img; ?> 

Для этого вы можете использовать SimpleHtmlDom . а затем найдите теги title и img или что еще вам нужно делать.