cURL: ¿qué es y cómo puede usarlo para raspado de datos?

cURL es un comando versátil que se usa en programación para recopilar y transferir datos. ¿Cómo puede aprovechar cURL para raspar datos (web scraping)? Este articulo le ayudará a ponerse en acción.
Gal El Al of Bright Data
Gal El Al | Director of Support
23-Dec-2020

En esta publicación de blog conocerá más acerca de:

¿Qué es cURL?

cURL es una herramienta basada en líneas de comandos que puede usar para transferir datos por medio de protocolos de red. El nombre cURL quiere decir “URL cliente” y se escribe como “curl”. Este popular comando usa sintaxis URL para transferir datos desde y hacia servidores. “libcurl”, es una librería para transferencias URL del lado del cliente, es gratuita y de uso sencillo y soporta a cURL.

¿Por qué es beneficioso usar cURL?

La versatilidad de este comando significa que puede usar cURL para una variedad de casos de uso, incluyendo:

  • Autenticación de usuarios
  • Publicaciones HTTP
  • Conexiones SSL
  • Soporte de proxy
  • Carga de FTP

El “caso de uso” más sencillo de cURL es la carga y descarga de sitio web completos usando uno de los protocolos soportados.

Protocolos cURL

Mientras cURL tiene una larga lista de protocolos que soporta, usará HTTP de manera predeterminada si no se especifica un protocolo. Aquí se presenta una lista de protocolos soportados:

cURL comando - lista de protocolos soportados - dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, pop3, stmp, rtsp, scp, sftp, smb, sms, telnet, tftp

Instalación de cURL

El comando cURL está instalado de manera predeterminada en distribuciones de Linux.

¿Cómo verifica si ya tiene cURL instalado?

1. Abrir la consola Linux

2. Ingresar “cURL” y presionar “Enter”.

3. Si cURL ya está instalado, se mostrará el mensaje:

ventana de terminal cURL intente -ayuda -comandos manuales

4. Si no tiene cURL instalado, verá el siguiente mensaje: “comando no encontrado”. Entonces podrá recurrir al paquete de distribución e instalarlo (consultar más detalles más adelante).

Cómo usar cURL

La sintaxis de cURL es bastante sencilla:

command line Curl options url

Por ejemplo, si desea descargar una página web (página web.com) solo ejecute:

curl command line webpage.com

Entonces, el comando le dará el código fuente de la página en la ventana de su terminal. Mantenga en mente que si no especifica un protocolo, cURL usará HTTP de manera predeterminada. Más adelante, podrá encontrar un ejemplo de cómo definir protocolos en específico:

ftp cURL command line syntax

Si olvida agregar :// cURL adivinará el protocolo que desea usar.

Hablamos con brevedad acerca del uso básico del comando; sin embargo, puede encontrar una lista de opciones en el sitio de documentación de cURL. Las opciones son las posibles acciones que podría realizar en la URL. Al elegir una opción, se dice a cURL qué acción realizar en la URL que enlistó. La URL dice a cURL dónde necesita realizar esta acción. Entonces, cURL le permite enlistar una o varias URLs.

Para descargar múltiples URLs, agregue como prefijo a cada URL un -0 seguido de un espacio. Esto puede realizarse en una sola línea o puede escribir una línea diferente para cada URL. También puede descargar parte de una URL enlistando la páginas. Por ejemplo:

curl command line for multiple pages on website

 

Guardado de la descarga

Puede guardar el contenido de la URL en un archivo usando cURL con dos métodos diferentes:

1. Método -o : le permite agregar un nombre de archivo donde se guardará la URL. Esta opción tiene la siguiente estructura:

Command line CURL filename

2. Método -O : aquí no necesita agregar un nombre de archivo ya que esta opción le permite guardar el archivo bajo el nombre de la URL. Para usar esta opción, solo necesita agregar el prefijo -O a la URL.

Restableciendo la descarga

Es posible que su descarga se detenga a la mitad. En este caso, reescriba el comando, agregue la opción -C al inicio :

curl filename as URL

¿Por qué cURL es tan popular?

cURL en realidad es como la “navaja suiza” de los comandos, se creó para operaciones complejas. Sin embargo, hay alternativas, por ejemplo: “wget” o “Kurly” que funcionan bien con tareas más simples.

Entre desarrolladores, cURL es una favorita porque está disponible para casi cada plataforma. A veces, incluso está instalada de manera predeterminada. Esto significa que, sin importar qué programas o trabajo ejecuta, los comandos de cURL deben funcionar.

Además, es posible que si su SO tiene menos de una década de antigüedad, tendrá cURL instalado. También puede leer los documentos en un navegador y revisar la documentación de cURL. Si ejecuta un versión reciente de Windows, es probable que ya tenga cURL instalada. De no ser así, revise esta publicación en Stack Overflow para conocer más acerca de cómo hacerlo.

Raspado de datos con cURL

Tip pro: asegúrese de cumplir con las reglas de un sitio web y, en general, no intente tener acceso a contenido protegido por contraseña que sea mayormente ilegal o, al menos, mal visto.

Se puede usar cURL para automatizar el proceso repetitivo al raspar datos, que podría ayudarle a evitar tareas tediosas. Para este propósito, necesita usar PHP. A continuación, un ejemplo que encontramos en GitHub:

web scraping script in php using curl

Existen tres opciones cuando se usa cURL para realizar raspado de una página web, debe usar:

  • cURL_init($url) -> Inicia la sesión
  • curl_exec() -> Ejecuta
  • curl_close() -> Cierra
code syntax for scraping a web page using curl

Otras opciones que deben incluir:

  • Curlopt_url -> Establece la URL donde desea realizar raspado de datos
setting the URL you want to scrape with cURL
  • Curlopt_returntransfer -> ordena a cURL guardar el raspado de la página como una variable. (Esto le permite obtener con exactitud lo que deseaba extraer de la página).
curl command line for saving scraped page as a variable

¿Se ha cansado de las técnicas manuales de raspado de datos?

Bright Data ha puesto en marcha una solución totalmente automatizada, que no requiere código y le permite obtener acceso a sitios web enteros y puntos de datos con solo presionar un botón.

Gal El Al of Bright Data
Gal El Al | Director of Support

Head of Support at Bright Data with a demonstrated history of working in the computer and network security industry. Specializing in billing processes, technical support, quality assurance, account management, as well as helping customers streamline their data collection efforts while simultaneously improving cost efficiency.

Usted también puede estar interesado en

Python web scraping guide

Raspado web con Python – Guía paso a paso

Aprenda a realizar raspado de datos con Python para recolectar datos de múltiples sitios web rápidamente, ahorrando tiempo y esfuerzo.
How to use web data for a successful eCommerce holiday season

Conjuntos de datos de eCommerce para la temporada festiva

Use conjuntos de datos de eCommerce y manténgase alerta sobre los precios de sus competidores, inventario de productos y reseñas de clientes.

Los 9 mitos más grandes acerca del raspado de datos (scraping)

El raspado de datos (scraping) tiene una mala reputación porque puede usarse con malicia. Sin embargo, ¡el raspado de datos también puede usarse con propósitos positivos! En esta publicación, disiparemos algunos de los mitos más comunes acerca del raspado de datos, mostraremos cómo se puede usar esta técnica con propósitos positivos.
Web scraping with PHP

Raspado de datos con PHP: una guía paso a paso

Aprenda a crear y programar con facilidad su propio raspador web en PHP, desde cero.

Cómo usar Java en el raspado de datos web para desbloquear puntos de datos críticos de una misión

¿No tiene certeza de cuáles herramientas de soporte debe descargar para crear un entorno de Java ideal para recopilación de datos? ¿No es claro cómo se extraen o analizan puntos de datos desde HTML para luego convertirse en formato CSV? Esta publicación ayudará a dejar claros estos aspectos.
What is alternative data

¿Qué son los datos alternativos y cómo se usan?

Las casas de inversión monitorean redes sociales, motores de búsqueda y datos sobre demanda de consumidores, y reciben alertas en tiempo real cuando se menciona compañías en su portafolio. Sucede de la siguiente manera.
How Web Scraping in Microsoft Excel Works - A Detailed Guide

Guía detallada sobre el funcionamiento del raspado de datos web en Microsoft Excel

Presentamos esta guía paso a paso, sencilla y breve, para ilustrar la ejecución de una búsqueda de datos basada en web, directamente desde su hoja de trabajo en Microsoft Excel.
What is a proxy server & how does it work?

¿Qué es un servidor proxy y cómo funciona?

Esta guía cubre todo lo que se necesita saber acerca de servidores proxy incluyendo “cómo funcionan”, “los diferentes tipos de proxy disponibles en la actualidad”, además de una comparación entre proxies y VPNs para permitir a su compañía elegir la herramienta que sea mejor para su negocio.