En Linux, ¿cómo puedo obtener una URL y obtener su contenido en una variable en el script de shell?¿Cómo obtener los contenidos de una página web en una variable de shell?
Respuesta
Puede utilizar wget
comando para descargar la página y leer en una variable como:
content=$(wget google.com -q -O -)
echo $content
Utilizamos la opción de wget
-O
, que nos permite especificar el nombre del archivo en el que wget
vuelca el contenido de la página Especificamos -
para obtener el volcado en la salida estándar y lo recogemos en la variable content
. Puede agregar la opción silenciosa -q
para desactivar la salida de wget.
Usted puede utilizar el comando curl para este aswell como:
content=$(curl -L google.com)
echo $content
Tenemos que utilizar la opción -L
que la página que estamos solicitando que podría haber movido. En ese caso, necesitamos obtener la página de la nueva ubicación. La opción -L
o --location
nos ayuda con esto.
Existe el comando wget
o el curl
.
Ahora puede usar el archivo que descargó con wget. O puede manejar una secuencia con curl.
Recursos:
content=`wget -O - $url`
'$ (...)' es preferible a '' ... '', ver http://mywiki.wooledge.org/BashFAQ/082 – Giacomo
Supongo que estoy mostrando mi edad. De vuelta en el día, todos _sue_ habíamos sido backticks ... ¡y nos gustó! ¡Ahora sal de mi césped! –
@rjack: (Pero el artículo al que se vinculó hace un muy buen caso para la sintaxis de $ (...).) –
Puede utilizar curl
o wget
para recuperar los datos en bruto, o puede utilizar w3m -dump
para tener una buena representación de texto de una página web.
$ foo=$(w3m -dump http://www.example.com/); echo $foo
You have reached this web page by typing "example.com", "example.net","example.org" or "example.edu" into your web browser. These domain names are reserved for use in documentation and are not available for registration. See RFC 2606, Section 3.
hay muchas maneras de obtener una página en la línea de comandos ... pero también depende de si desea que el código fuente o la propia página:
Si necesita el código fuente
con curl: curl $url
con wget: wget -O - $url
pero si wa nt para conseguir lo que se puede ver con un navegador, el lince puede ser útil: lynx -dump $url
creo que se puede encontrar tantas soluciones para este pequeño problema, tal vez debería leer toda la página hombre de dichos comandos.Y no se olvide de reemplazar $ url por su URL :)
Buena suerte :)
Si tiene LWP instalado, se proporciona un binario llamado simplemente "GET".
$ GET http://example.com <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=utf-8"> <TITLE>Example Web Page</TITLE> </HEAD> <body> <p>You have reached this web page by typing "example.com", "example.net","example.org" or "example.edu" into your web browser.</p> <p>These domain names are reserved for use in documentation and are not available for registration. See <a href="http://www.rfc-editor.org/rfc/rfc2606.txt">RFC 2606</a>, Section 3.</p> </BODY> </HTML>
wget -O-
, curl
y lynx -source
comportan de manera similar.
- 1. Cómo leer una página web completa en una variable
- 2. Lua: Obtener una página web
- 3. ¿Cómo hacer eco de los contenidos de una página en otra página?
- 4. ¿Cómo puedo obtener la clave pública de una página web?
- 5. ¿Cómo borrar los contenidos de una jTable?
- 6. Incrustar una página web en una ventana de C#
- 7. Lea los contenidos de una URL en Android
- 8. ¿Cómo imprimir los contenidos de la memoria de una variable en C?
- 9. ¿Cómo obtener una sección específica dentro de una página MAN?
- 10. PHP: ¿cómo puedo cargar el contenido de una página web en una variable?
- 11. Reemplazar una cadena en script de shell utilizando una variable
- 12. cómo grep una variable en el programa de shell?
- 13. ¿Cómo declaro una variable constante en el script de shell?
- 14. Reutilizar una variable varias veces en una página de ASP.NET
- 15. Pegar una imagen en una página web
- 16. ¿Cómo obtener los contenidos del carrito de compras de Amazon?
- 17. ¿Cómo imprimir los contenidos de una propiedad usando Xcode depurador?
- 18. Bibtex en una página web?
- 19. ¿Cómo tomar una captura de pantalla de una página web?
- 20. Shell Scripting: uso de una variable para definir una ruta
- 21. Deshabilitar todos los controles de formulario en una página web
- 22. Cómo puedo obtener el contenido de la página web y guardarlo en la variable de cadena
- 23. Cómo capturar el resultado de una llamada al sistema en una variable de shell?
- 24. listando todos los contenidos de una carpeta en tfs
- 25. ¿Cómo puedo establecer una variable en una página _Layout?
- 26. Obtener todos los controles Web de un tipo específico en una página
- 27. Cómo desvanecerse en una página web completa -
- 28. Lectura programática de una página web
- 29. Cómo descargar una página web en php
- 30. Crear una variable en un archivo MAKE leyendo los contenidos de otro archivo
Le expliqué, y su pregunta ha sido editada desde entonces, por lo que mi downvote ya no significa nada ... (En realidad se convirtió en un voto popular). –
Este es un truco muy bueno. Invoco un script de shell a través de un script php en un servidor proxy. Cuando se le preguntó, el servidor proxy enciende servidores caros que se apagan después de 2 horas. Necesito la salida de wget para la salida estándar para retroalimentar el registro de la consola de Jenkins. – Dennis
todavía estoy por obtener esto ... ¿alguien puede demostrar cómo, por ejemplo. obtener una etiqueta img en una variable para este enlace http://www2.watchop.io/manga2/read/one-piece/1/4 ?? – juggernaut1996