2011-10-01 17 views
16

Ho provato a scaricare un'immagine usando wget ma ho ottenuto un errore simile al seguente.wget non può scaricare - 404 errore

--2011-10-01 16:45:42-- http://www.icerts.com/images/logo.jpg 
Resolving www.icerts.com... 97.74.86.3 
Connecting to www.icerts.com|97.74.86.3|:80... connected. 
HTTP request sent, awaiting response... 404 Not Found 
2011-10-01 16:45:43 ERROR 404: Not Found. 

Il mio browser non presenta problemi durante il caricamento dell'immagine. Qual è il problema? Non è possibile scaricare nemmeno arricciatura di .

Grazie.

Sam

+0

Sei sicuro l'immagine non viene memorizzata nella cache nel tuo browser? Ottengo 404 quando provo ad afferrarlo. Se hai firebug, controlla se sta prelevando il file dal tuo disco o cercando di scaricarlo dal server. – user470714

risposta

14

È necessario aggiungere il campo referer nelle intestazioni di richiesta HTTP. Con wget, basta l'arg --header:

wget http://www.icerts.com/images/logo.jpg --header "Referer: www.icerts.com" 

E il risultato:

--2011-10-02 02:00:18-- http://www.icerts.com/images/logo.jpg 
Résolution de www.icerts.com (www.icerts.com)... 97.74.86.3 
Connexion vers www.icerts.com (www.icerts.com)|97.74.86.3|:80...connecté. 
requête HTTP transmise, en attente de la réponse...200 OK 
Longueur: 6102 (6,0K) [image/jpeg] 
Sauvegarde en : «logo.jpg» 
+1

wget http://mirror.sdunix.com/apache//ant/binaries/apache-ant-1.9.4-bin.zip Sto provando questo collegamento, non funziona, l'ho provato anche con l'intestazione, ma non ci sono riuscito –

+1

Qualcuno si preoccupa di approfondire perché è necessaria l'intestazione? (non ha funzionato per me comunque, ma vorrei essere più chiaro) – PandaWood

6

si riceverà anche un errore 404 se si utilizza IPv6 e il server accetta solo IPv4.

Per utilizzare IPv4, effettuare una richiesta di aggiunta di -4:

wget -4 http://www.php.net/get/php-5.4.13.tar.gz/from/this/mirror 
+0

Grazie per me. – lolcode

+0

Ho passato più di due giorni e finalmente ho trovato la risposta giusta, grazie. –

7

Ho avuto lo stesso problema con un URL di Google Documenti. Racchiudere l'URL tra virgolette ha fatto per me il trucco:

wget "https://docs.google.com/spreadsheets/export?format=tsv&id=1sSi9f6m-zKteoXA4r4Yq-zfdmL4rjlZRt38mejpdhC23" -O sheet.tsv 
+1

Questo ha funzionato per me. Grazie! – Andy

1

Ho avuto lo stesso problema. risolto utilizzando apici come questo:

$ wget 'http://www.icerts.com/images/logo.jpg' 

versione wget in uso:

$ wget --version 
GNU Wget 1.11.4 Red Hat modified