Wget-Download-Seitenressourcen in einer anderen Domäne erstellen

6683
Parsa

Wie können Sie mit wget eine gesamte Site (Domäne A) herunterladen, wenn sich ihre Ressourcen in einer anderen Domäne befinden (Domäne B)?
Ich habe es versucht:
wget -r --level=inf -p -k -E --domains=domainA,domainB http://www.domainA

12
Beeindruckend! Niemand nach all dieser Zeit? Parsa vor 14 Jahren 0
Der Befehl funktioniert nicht, weil `--domains` allein nicht aktiviert ist --span-hosts`. Das Hinzufügen von "--span-hosts" hätte das Problem gelöst. : | Parsa vor 10 Jahren 0

3 Antworten auf die Frage

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

UPDATE: Ich erinnere mich, dass der obige Befehl in der Vergangenheit für mich funktionierte (das war 2010 und ich habe damals GNU Tools für Windows verwendet ). Ich musste es jedoch folgendermaßen ändern, als ich es heute verwenden wollte:

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

Die Abkürzung dafür wäre: 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>

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

Ich erhalte: wget: --span-hosts: Ungültige boolesche DomäneA, DomäneB; Verwenden Sie "Ein" oder "Aus". Nach dem Einschalten funktioniert es nicht mehr. Matthew Flaschen vor 10 Jahren 0
@ MatthewFlaschen Was ich hier geschrieben habe, hat für mich gearbeitet. Könnten Sie die Argumente angeben, die Sie verwendet haben? Parsa vor 10 Jahren 0
Ich habe nicht genau den Befehl, den ich zuvor lief. Ich habe jedoch das gleiche Problem mit: `wget --recursive --level = inf --page-requisites --convert-links --html-extension --span-hosts = example.org, iana.org example.org `Ich verwende GNU Wget 1.13.4 unter Debian. Matthew Flaschen vor 10 Jahren 0
Versuchen Sie "--span-hosts --domains = example.org, iana.org" - Ich denke, dass "--span-hosts" ein Boolean sein muss, und dann verwenden Sie "--domains", um anzugeben, welche Hosts angegeben werden sollen . Konklone vor 10 Jahren 2
Konklone, --span-hosts ist ein Boolean von 1.12 und später wusste ich das nicht. @ MatthewFlaschen, ich habe die Antwort aktualisiert. Übrigens, das funktioniert immer noch unter 1.11 und früheren Versionen, wenn Sie GNU Tools für Windows verwenden. Parsa vor 10 Jahren 0
1
mnml

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

Das funktioniert teilweise. Aus irgendeinem Grund scheint es jedoch nicht zu funktionieren, wenn die URL (am Ende) eine Weiterleitung ist. Außerdem werden auch Links heruntergeladen, nicht nur Seitenanforderungen. -R und --recursive sind auch gleich. Matthew Flaschen vor 10 Jahren 0
0
Matthew Flaschen
wget --page-requisites --convert-links --adjust-extension --span-hosts --domains domainA,domainB domainA 

Möglicherweise müssen Sie robots.txt ignorieren (beachten Sie, dass dies möglicherweise gegen einige Nutzungsbedingungen verstößt und Sie das erforderliche Minimum herunterladen müssen). Siehe https://www.gnu.org/software/wget/manual/wget.html#Robot-Exclusion .