Faire des ressources de page de téléchargement wget sur un domaine différent


16

Comment utilisez-vous wget pour télécharger un site entier (domaine A) lorsque ses ressources se trouvent sur un autre domaine (domaine B)?
J'ai essayé:
wget -r --level=inf -p -k -E --domains=domainA,domainB http://www.domainA


Hou la la! Personne après tout ce temps?
Parsa

La raison pour laquelle la commande ne fonctionne pas est que l'utilisation --domainsseule ne s'active pas --span-hosts. L'ajout --span-hostsaurait résolu le problème. : |
Parsa

Réponses:


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

MISE À JOUR: Je me souviens que la commande ci-dessus a fonctionné pour moi dans le passé (c'était en 2010 et j'utilisais alors les outils GNU pour Windows ); cependant, j'ai dû le changer comme suit lorsque je voulais l'utiliser aujourd'hui:

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

Le raccourci pour cela serait: 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>

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


J'obtiens: wget: --span-hosts: booléen non valide activé domainA,domainB'; use ou désactivé. Après avoir activé, cela ne fonctionne pas.
Matthew Flaschen

@MatthewFlaschen Ce que j'ai écrit ici a fonctionné pour moi. Pourriez-vous fournir les arguments que vous avez utilisés?
Parsa

Je n'ai pas la commande exacte que j'ai exécutée auparavant. Cependant, j'ai le même problème avec: wget --recursive --level=inf --page-requisites --convert-links --html-extension --span-hosts=example.org,iana.org example.org j'utilise GNU Wget 1.13.4 sur Debian.
Matthew Flaschen

3
Essayez --span-hosts --domains=example.org,iana.org- je pense que --span-hostsdoit être un booléen, puis vous utilisez --domainspour spécifier les hôtes à couvrir.
Eric Mill

Konklone, --span-hosts est un booléen de 1.12 et plus tard, je ne le savais pas. @MatthewFlaschen, j'ai mis à jour la réponse. Soit dit en passant, cela fonctionnera toujours sur 1.11 et versions antérieures, si vous utilisez GNU Tools pour Windows.
Parsa

1

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


Cela fonctionne en partie. Cependant, pour une raison quelconque, cela ne semble pas fonctionner si l'URL (à la fin) est une redirection. En outre, il télécharge également des liens, pas seulement les éléments requis pour la page. De plus, -r et --recursive sont identiques.
Matthew Flaschen


-1

Pensez à utiliser HTTrack . Il a plus d'options lors de l'exploration de contenu sur d'autres domaines que wget. Utiliser wget avec --span-hosts, --domains et --accept lorsque cela ne suffisait pas à mes besoins mais HTTrack a fait le travail. Je me souviens que la définition d'une limite de redirection sur d'autres domaines a beaucoup aidé.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.