Haga que wget descargue recursos de página en un dominio diferente


16

¿Cómo se usa wget para descargar un sitio completo (dominio A) cuando sus recursos están en otro dominio (dominio B)?
He intentado:
wget -r --level=inf -p -k -E --domains=domainA,domainB http://www.domainA


¡Guauu! ¿Nadie después de todo este tiempo?
Parsa

La razón por la que el comando no funciona es porque el uso --domainspor sí solo no se activa --span-hosts. Agregar --span-hostshabría resuelto el problema. : |
Parsa

Respuestas:


14
wget --recursive --level=inf --page-requisites --convert-links --html-extension \
     --span-hosts=domainA,domainB url-on-domainA

ACTUALIZACIÓN: Recuerdo que el comando anterior funcionó para mí en el pasado (eso fue en 2010 y estaba usando GNU Tools para Windows en ese entonces); sin embargo, tuve que cambiarlo a lo siguiente cuando quería usarlo hoy:

wget --recursive --level=inf --page-requisites --convert-links \
     --adjust-extension --span-hosts --domains=domainA,domainB domainA

La taquigrafía para eso sería: wget -rEDpkH -l inf domainA,domainB domainA

  • -r = --recursive
  • -l <depth> = --level=<depth>
  • -E = --adjust-extension
  • -p = --page-requisites
  • -K = --backup-converted
  • -k = --convert-links
  • -D <domain-list> = --domain-list=<domain-list>
  • -H = --span-hosts
  • -np = --no-parent
  • -U <agent-string> = --user-agent=<agent-string>

Manual de GNU Wget: https://www.gnu.org/software/wget/manual/wget.html


Obtengo: wget: --span-hosts: booleano no válido domainA,domainB'; use activado o desactivado. Después de cambiar a encendido, no funciona.
Matthew Flaschen

@MatthewFlaschen Lo que he escrito aquí funcionó para mí. ¿Podría proporcionar los argumentos que ha utilizado?
Parsa

No tengo el comando exacto que ejecuté antes. Sin embargo, tengo el mismo problema con: wget --recursive --level=inf --page-requisites --convert-links --html-extension --span-hosts=example.org,iana.org example.org estoy usando GNU Wget 1.13.4 en Debian.
Matthew Flaschen

3
Prueba --span-hosts --domains=example.org,iana.org: creo que --span-hostsdebe ser un booleano, y luego usas --domainspara especificar qué hosts abarcar.
Eric Mill

Konklone, --span-hosts es un booleano de 1.12 y posterior, no lo sabía. @MatthewFlaschen, actualicé la respuesta. Por cierto, eso seguirá funcionando en 1.11 y versiones anteriores, si está utilizando GNU Tools para Windows.
Parsa

1

wget --recursive --level = inf --page-requisitos --convert-links --html-extension -rH -DdomainA, domainB domainA


Esto funciona en parte. Sin embargo, por alguna razón, no parece funcionar si la URL (al final) es una redirección. Además, también descarga enlaces, no solo los requisitos de la página. Además, -r y --recursive son lo mismo.
Matthew Flaschen


-1

Considere usar HTTrack . Tiene más opciones al rastrear contenido en otros dominios que wget. Usando wget con --span-hosts, --domains y --accept donde no es suficiente para mis necesidades, pero HTTrack hizo el trabajo. Recuerdo que establecer límites de redireccionamientos en otros dominios ayudó mucho.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.