cURL: ¿qué es y cómo puede usarlo para raspado de datos?
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:
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:
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:
Por ejemplo, si desea descargar una página web (página web.com) solo ejecute:
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:
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:
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:
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 :
¿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:
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
Otras opciones que deben incluir:
- Curlopt_url -> Establece la URL donde desea realizar raspado de datos
- 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).
¿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.