2011-01-05 11 views

risposta

156

Prova questo:

wget -nd -r -P /save/location -A jpeg,jpg,bmp,gif,png http://www.somedomain.com 

Ecco qualche informazione in più:

-nd impedisce la creazione di una gerarchia di directory (cioè no directories) .

-r consente il recupero ricorsivo. Vedere Recursive Download per ulteriori informazioni.

-P imposta il prefisso di directory in cui sono salvati tutti i file e le directory.

-A imposta una whitelist per il recupero solo di determinati tipi di file. Stringhe e motivi sono accettati ed entrambi possono essere utilizzati in una lista separata da virgole (come visto sopra). Vedere Types of Files per ulteriori informazioni.

+4

Questo in realtà non ha funzionato per me. La mia posizione di salvataggio era "." e ha copiato l'intera gerarchia del sito lì. –

+2

@ButtleButkus Sembra che sia necessario un po 'di confusione con l'opzione '-A', vedere la documentazione di Wget su [tipi di file] (http://www.gnu.org/software/wget/manual/wget # .html Tipi-of-Files). Inoltre, se stai scaricando nella directory corrente, puoi rimuovere l'opzione '-P' del prefisso di directory. Se stai scaricando un singolo tipo di file, ad esempio solo jpg, usa qualcosa come 'wget -r -A.jpg http: // www.domain.com'. Guarda gli [esempi avanzati] (http://www.gnu.org/software/wget/manual/wget.html#Advanced-Usage) forniti dalla documentazione di Wget. – Jon

+0

L'aggiunta di '-nd' a quanto sopra funziona. Puoi anche specificare più flag -A come '-A" * foo * "-A" * bar * "' – Yablargo

9

Provate questo:

wget -nd -r -P /save/location/ -A jpeg,jpg,bmp,gif,png http://www.domain.com 

e attendere che elimina tutte le informazioni supplementari

+0

Non funziona per me .wget -nd -r -P/Users/duraiamuthan/Download/images/-A jpeg, jpg, bmp, gif, png http://www.forbes.com/profile/mark- zuckerberg/' – Vivo

118
wget -nd -r -l 2 -A jpg,jpeg,png,gif http://t.co 
  • -nd: nessuna directory (salvare tutti i file nella directory corrente; -P directory cambia la directory di destinazione
  • -r -l 2: livello ricorsivo
  • -A: estensioni accettati
wget -nd -H -p -A jpg,jpeg,png,gif -e robots=off example.tumblr.com/page/{1..2} 
  • -H: host campata (wget non scaricare file da domini o sottodomini diversi per impostazione predefinita)
  • -p: pagina divertimenti o (comprende risorse come immagini su ogni pagina)
  • -e robots=off: eseguire il comando robotos=off come se fosse parte del file .wgetrc. Questo spegne l'esclusione del robot, il che significa che ignori il robots.txt e i meta tag del robot (dovresti sapere quali sono le implicazioni di questo, fai attenzione).

Esempio: Ottenere tutti .jpg file da un esemplare elenco di directory:

$ wget -nd -r -l 1 -A jpg http://example.com/listing/ 
+9

+1 per la spiegazione – Shoan

+0

' -H -p' dove ho supervisionato, thx! – tuk0z

5

Secondo la pagina man il flag -P è:

-P prefisso - prefisso rubrica = prefisso Imposta prefisso directory al prefisso. Il prefisso di directory è la directory in cui tutti gli altri file e sottodirectory verranno salvati da a, ovvero la parte superiore dell'albero di recupero. L'impostazione predefinita è. (la directory corrente ).

Ciò significa che specifica solo la destinazione ma dove salvare l'albero delle directory. Non appiattisce l'albero in una sola directory. Come accennato prima il flag -nd lo fa in realtà.

@Jon in futuro sarebbe utile descrivere ciò che fa la bandiera così capiamo come funziona qualcosa.

-7

utility wget recupera i file dal World Wide Web (WWW) utilizzando ampiamente utilizzato protocolli come HTTP, HTTPS e FTP. L'utilità Wget è un pacchetto liberamente disponibile e la licenza è sotto licenza GNU GPL. Questa utility può essere installata su qualsiasi sistema operativo simile a Unix incluso Windows e MAC OS. È uno strumento da riga di comando non interattivo. La caratteristica principale di Wget è la sua robustezza. È progettato in modo tale da funzionare in connessioni di rete lente o instabili. Wget avvia automaticamente il download dal punto in cui era stato interrotto in caso di problemi di rete. Scarica anche il file in modo ricorsivo. Continuerà a provare fino a quando il file non verrà recuperato completamente.

Installare wget in macchina Linux sudo apt-get install wget

Creare una cartella in cui si desidera scaricare i file. sudo mkdir myimages cd myimages

Fare clic con il tasto destro sulla pagina Web e, ad esempio, se si desidera la posizione dell'immagine, fare clic destro sull'immagine e copiare la posizione dell'immagine. Se ci sono più immagini quindi seguire la sottostante:

Se ci sono 20 immagini da scaricare dal web tutto in una volta, la gamma parte da 0 a 19.

wget http://joindiaspora.com/img {0..19} .jpg

+2

La tua risposta spiega cos'è wget e come usarlo per scaricare immagini numerate in sequenza ... relativo alla domanda originale. – Alastair

2

Le soluzioni proposte sono perfette per scaricare le immagini e se è sufficiente per salvare tutti i file nella directory che si sta utilizzando. Ma se vuoi salvare tutte le immagini in una directory specificata senza riprodurre l'intero albero gerarchico del sito, prova ad aggiungere "cut-dirs" alla linea proposta da Jon.

wget -r -P /save/location -A jpeg,jpg,bmp,gif,png http://www.boia.de --cut-dirs=1 --cut-dirs=2 --cut-dirs=3 

in questo caso cut-dirs impediranno a wget per creare sotto-cartelle fino a quando il livello di 3 ° del reparto nel sito struttura gerarchica, salvando tutti i file nella directory che si specified.You possibile aggiungere più 'tagliare -dire 'con numeri più alti se hai a che fare con siti con una struttura profonda.

Problemi correlati