Goutte: Un Simple Scraper Web en PHP - Guía Completa

Goutte

Descubre Goutte, una biblioteca de scraping web en PHP. Aprende a instalar, usar y extraer datos de manera efectiva.

Visitar Sitio
Goutte: Un Simple Scraper Web en PHP - Guía Completa

Goutte: Un Simple Scraper Web en PHP

Goutte es una biblioteca de scraping y rastreo web para PHP que proporciona una API sencilla para extraer datos de respuestas HTML/XML. Aunque Goutte ha sido una herramienta popular para desarrolladores, es importante tener en cuenta que esta biblioteca está deprecada. A partir de la versión 4, Goutte se convierte en un simple proxy para la clase HttpBrowser del componente BrowserKit de Symfony.

Requisitos

Goutte requiere PHP 7.1 o superior.

Instalación

Para instalar Goutte, simplemente añade fabpot/goutte como una dependencia en tu archivo composer.json:

composer require fabpot/goutte

Uso Básico

Para comenzar a usar Goutte, crea una instancia del cliente Goutte:

use Goutte\Client;
$client = new Client();

Realizar Solicitudes

Puedes hacer solicitudes utilizando el método request():

// Ir al sitio web de Symfony
$crawler = $client->request('GET', 'https://www.symfony.com/blog/');

Este método devuelve un objeto Crawler que puedes usar para navegar por el contenido de la página.

Extraer Datos

Para extraer datos, puedes utilizar el método filter() del objeto Crawler:

// Obtener el último post en esta categoría y mostrar los títulos
$crawler->filter('h2 > a')->each(function ($node) {
    print $node->text()."\n";
});

Enviar Formularios

Goutte también permite enviar formularios fácilmente:

$crawler = $client->request('GET', 'https://github.com/');
$crawler = $client->click($crawler->selectLink('Sign in')->link());
$form = $crawler->selectButton('Sign in')->form();
$crawler = $client->submit($form, ['login' => 'fabpot', 'password' => 'xxxxxx']);
$crawler->filter('.flash-error')->each(function ($node) {
    print $node->text()."\n";
});

Más Información

Para obtener más información sobre lo que puedes hacer con Goutte, consulta la documentación de los componentes BrowserKit, DomCrawler y HttpClient de Symfony.

Pronunciación

Goutte se pronuncia como "goot", es decir, rima con "boot" y no con "out".

Licencia

Goutte está bajo la licencia MIT, lo que significa que puedes usarlo libremente en tus proyectos.

Conclusión

Aunque Goutte ha sido una herramienta valiosa para el scraping web en PHP, es crucial migrar a HttpBrowser para seguir recibiendo soporte y actualizaciones. Si estás buscando una solución de scraping web robusta y fácil de usar, Goutte sigue siendo una opción a considerar, pero asegúrate de estar al tanto de su estado de deprecación.

¡Prueba Goutte Hoy!

Si estás interesado en el scraping web, no dudes en probar Goutte y explorar lo que puede hacer por ti. ¡Feliz scraping!

Mejores Alternativas a Goutte