Udostępnij zasoby strony pobierania wget w innej domenie


16

Jak używasz wget do pobierania całej witryny (domena A), gdy jej zasoby znajdują się w innej domenie (domena B)?
Próbowałem:
wget -r --level=inf -p -k -E --domains=domainA,domainB http://www.domainA


Łał! Nikt po tak długim czasie?
Parsa

Powodem, dla którego polecenie nie działa, jest to, że --domainssamo używanie się nie włącza --span-hosts. Dodanie --span-hostsrozwiązałoby problem. : |
Parsa

Odpowiedzi:


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

AKTUALIZACJA: Pamiętam, że powyższe polecenie działało dla mnie w przeszłości (był to rok 2010 i wtedy używałem GNU Tools dla Windows ); jednak musiałem zmienić go na następujący, gdy chciałem go dzisiaj użyć:

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

Skrótem tego byłoby: 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>

Podręcznik GNU Wget: https://www.gnu.org/software/wget/manual/wget.html


Dostaję: wget: --span-hosts: niepoprawny boolean domainA,domainB'; use włączony lub wyłączony. Po zmianie na on nie działa.
Matthew Flaschen

@MatthewFlaschen To, co tu napisałem, działało dla mnie. Czy możesz podać argumenty, których użyłeś?
Parsa

Nie mam dokładnego polecenia, które wcześniej uruchomiłem. Mam jednak ten sam problem z: wget --recursive --level=inf --page-requisites --convert-links --html-extension --span-hosts=example.org,iana.org example.org Używam GNU Wget 1.13.4 na Debianie.
Matthew Flaschen

3
Spróbuj --span-hosts --domains=example.org,iana.org- myślę, że --span-hostsmusi to być wartość logiczna, a następnie możesz --domainsokreślić, które hosty mają zostać włączone.
Eric Mill

Konklone, --span-hosts jest wartością logiczną od 1.12 i później, nie wiedziałem o tym. @MatthewFlaschen, zaktualizowałem odpowiedź. Nawiasem mówiąc, będzie to nadal działać na 1.11 i wcześniejszych, jeśli używasz GNU Tools dla Windows.
Parsa,

1

wget --recursive --level = inf - wymagania-strony --convert-links --html-extension -rH -DdomainA, domainB domainA


To częściowo działa. Jednak z jakiegoś powodu nie wydaje się, aby adres URL (na końcu) był przekierowaniem. Ponadto pobiera również linki, a nie tylko wymagane strony. Również -r i --recursive są takie same.
Matthew Flaschen


-1

Rozważ użycie HTTrack . Ma więcej opcji podczas indeksowania treści w innych domenach niż wget. Używanie wget z opcjami --span-hosts, --domains i --accept jest niewystarczające dla moich potrzeb, ale HTTrack wykonał to zadanie. Pamiętam, że ustawienie limitu przekierowań w innych domenach bardzo pomogło.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.