Cómo usar Curl para descargar archivos y páginas web

Cómo usar Curl para descargar archivos y páginas web

Cómo usar Curl para descargar archivos y páginas web

VALORACIÓN DEL ARTÍCULO:
5/5


En esta guía, se le mostrará cómo usar el comando curl para descargar archivos y páginas web. Si quieres saber qué es curl, así como algunos de los interruptores y funciones clave, y cuándo deberías usarlo sobre el comando wget, has llegado al lugar correcto.

El comando curl se puede utilizar para transferir archivos utilizando varios formatos diferentes, incluyendo http, https, ftp e incluso smb.

Esencialmente, el comando curl tiene muchos métodos de autenticación diferentes y puedes usarlo para acceder a sitios FTP, enviar correos electrónicos, conectarte a direcciones SAMBA, subir y descargar archivos y muchas otras cosas.

Índice de contenidos

Uso básico del comando curl

El comando curl puede usarse para descargar archivos de Internet, pero en su forma básica, puede descargar el contenido de la página web directamente a la ventana del terminal.

Por ejemplo, introduzca el siguiente comando en una ventana de terminal:

curl http://linux.about.com/cs/linux101/g/curl.htm

La salida se desplazará hacia arriba en la ventana del terminal y le mostrará el código de la página web enlazada.

Obviamente, la página se desplaza demasiado rápido para leerla, por lo que si desea ralentizarla debería utilizar el comando menos o el comando más.

curl http://linux.about.com/cs/linux101/g/curl.htm | más

Salida del contenido de curl a un archivo

El problema con el uso básico del comando curl es que el texto se desplaza muy rápido y si está descargando un archivo como una imagen ISO entonces no quiere que esto vaya a la salida estándar.

Para guardar el contenido en un archivo, todo lo que tiene que hacer es especificar el interruptor menos o (-o) de la siguiente manera:

curl -o

Por lo tanto, para descargar la página enlazada en la sección de uso de comandos básicos, todo lo que tiene que hacer es introducir el siguiente comando:

curl -o curl.htm http://linux.about.com/cs/linux101/g/curl.htm

Una vez descargado el archivo, puede abrirlo en un editor o en su programa predeterminado determinado por el tipo de archivo.

Puede simplificarlo aún más utilizando el interruptor menos O (-O) como se indica a continuación:

curl -O http://linux.about.com/cs/linux101/g/curl.htm

Esto usará la porción de nombre de archivo de la URL y la convertirá en el nombre de archivo en el que se guarda la URL. En el caso anterior, el archivo se llamará curl.htm.

Ejecute el comando Curl en segundo plano

Por defecto, el comando curl muestra una barra de progreso que indica cuánto tiempo queda y cuántos datos se han transferido.

Si sólo quieres que el comando se ejecute para que puedas continuar con otras cosas, entonces lo primero que tienes que hacer es ejecutarlo en modo silencioso y luego necesitas ejecutarlo como un comando de fondo.

Para ejecutar un comando silenciosamente use el siguiente comando:

curl -s -O

Para que el comando se ejecute en segundo plano, es necesario utilizar el ampersand (&) como se indica a continuación:

Descarga de múltiples URLs con Curl

Puede descargar desde múltiples URLs usando un solo comando curl.

En su forma más simple puede descargar múltiples URLs de la siguiente manera:

curl -O http://www.mysite.com/page1.html -O http://www.mysite.com/page2.html

Imagina que tienes una carpeta con 100 imágenes, todas ellas llamadas image1.jpg, image2.jpg, image3.jpg etc. No querrás tener que escribir todas estas URLs y no tienes que hacerlo.

Puede utilizar corchetes para suministrar un rango. Por ejemplo, para obtener archivos de 1 a 100 puede especificar lo siguiente:

curl -O http://www.mysite.com/images/image[1-100].jpg

También puede utilizar corchetes rizados para especificar varios sitios con formatos similares.

Por ejemplo, imagina que quieres descargar www.google.com y www.bing.com. Puede utilizar simplemente el siguiente comando:

Visualización del progreso

Por defecto, el comando curl devuelve la siguiente información cuando descarga una URL:

  • Total %
  • Bytes totales
  • Recibido/Transferido %
  • Bytes recibidos/transferidos
  • Velocidad media de descarga
  • Velocidad media de carga
  • Tiempo total
  • Tiempo empleado
  • Tiempo restante
  • Velocidad actual

Si prefiere una barra de progreso simple que simplemente especifique el parámetro menos hash (-#) de la siguiente manera:

curl -# -O  

Manipulación de redirecciones

Imagina que has especificado una URL como parte del comando curl y crees que tienes la dirección correcta para descargar un archivo grande y luego te das cuenta de que todo lo que tienes es una página web que dice "esta página ha sido redirigida a www.blah.com". Eso sería molesto, ¿no?

El comando curl es inteligente, ya que puede seguir redirecciones. Todo lo que tiene que hacer es usar el interruptor menos L (-L) de la siguiente manera:

curl -OL

Reducir la tasa de descarga

Si usted está descargando un archivo grande y tiene una mala conexión a Internet, entonces podría molestar a la familia si están tratando de hacer cosas en Internet también.

Afortunadamente, puedes reducir la velocidad de descarga con el comando curl para que, aunque te lleve más tiempo descargar el archivo, puedas mantener a todo el mundo contento.

curl -O --limit-rate 1m

La tasa puede especificarse en kilobytes (k o K), megabytes (m o m) o gigabytes (g o G).

Descargar archivos desde un servidor FTP

El comando curl puede manejar más que sólo transferencias de archivos HTTP. Puede manejar FTP, GOPHER, SMB, HTTPS y muchos otros formatos.

Para descargar archivos desde un servidor FTP, utilice el siguiente comando:

curl -u user:password -o

Si especifica el nombre de un archivo como parte de la URL, entonces descargará el archivo, pero si especifica el nombre de una carpeta, devolverá un listado de carpetas.

También puede usar curl para subir archivos a un servidor FTP utilizando el siguiente comando:

curl -u user:password -T

Los nombres de archivo y pueden utilizar el mismo patrón de coincidencia que para la descarga de varios archivos HTTP.

Transferencia de datos de formulario a un formulario

Puede utilizar curl para rellenar un formulario en línea y enviar los datos como si lo hubiera hecho en línea. Muchos servicios populares como Google bloquean este tipo de uso.

Imagine que hay un formulario con un nombre y una dirección de correo electrónico. Usted puede enviar esta información de la siguiente manera:

curl -d name=john email=john@mail.com www.mysite.com/formpage.php

Existen varias maneras de transferir información de formulario. El comando anterior utiliza texto básico, pero si desea utilizar la codificación múltiple que permite la transferencia de imágenes, deberá utilizar el interruptor menos F (-F).

TAMBIÉN TE INTERESA

nuevo mac studio

El nuevo Mac Studio es inalcanzable para cualquier PC de escritorio

Apple ha presentado su equipo de sobremesa más potente hasta la fecha: el nuevo Mac Studio, impulsado por los chips M4 Max y el nuevo M3 Ultra, una auténtica bestia orientada a profesionales de la inteligencia artificial, el diseño, la ingeniería o el desarrollo de software que buscan rendimiento extremo en un formato compacto. Vale,

camara seguridad doble lente de Beans View

Beans View tiene una cámara de seguridad de doble lente a un precio imbatible en Amazon

La seguridad inteligente del hogar da un nuevo paso con la Beans View 220 Dual 3K, la última incorporación al catálogo de la marca especializada en cámaras Wi-Fi. Este nuevo modelo, diseñado para ofrecer una vigilancia integral y precisa en espacios interiores, combina tecnología de doble lente, inteligencia artificial, visión nocturna a color y seguimiento

industria del videojuego

La industria del videojuego ya se mueve por un público muy distinto al de hace años

Durante años, el imaginario colectivo ha situado al jugador de videojuegos en el rincón oscuro de una habitación, joven, solitario, inmóvil frente a una pantalla. Esa imagen está cada vez más lejos de la realidad para la industria del videojuego. La V Radiografía del Gaming en España, elaborada por el ecommerce tecnológico PcComponentes, desmonta con

nuevos powerbanks Ewent

5 powerbanks de Ewent para cada necesidad: seguro que hay uno para ti

Las powerbanks o también llamadas baterías portátiles se han convertido en un aliado para muchas personas que hacen un uso intensivo de sus dispositivos electrónicos. Para los smartphones, estos componentes son ya una extensión de los mismos para muchas personas, sin embargo no solo existen este tipo de gadgets para teléfonos, sino que hay otros

contraseñas

¿Y si los métodos de seguridad en el futuro fueran sin contraseñas?

A pesar de los constantes avances en tecnología y ciberseguridad, los métodos de seguridad más tradicionales, es decir, las contraseñas, siguen siendo la opción predilecta por la mayoría para proteger su información o para acceder a las plataformas. No obstante, las contraseñas son actualmente uno de los grandes eslabones débiles en la protección de identidades