2016-05-08 19 views
3

Ich versuche einen wget-Befehl zu integrieren, den ich in ein PHP-Skript geschrieben habe. Der Befehl lädt rekursiv jede html/php-Datei auf einer Webseite (was eine Funktionalität ist, die ich in file_get_contents() nicht gefunden habe). Ich habe den wget-Befehl in einem Terminal-Fenster getestet, aber wenn er entweder mit exec() oder shell_exec() ausgeführt wird, passiert nichts. Ich bekomme keine Fehler oder Warnungen. Hierwget funktioniert nicht beim Aufruf von exec() oder shell_exec()

ist der Befehl in Frage,

wget --recursive -m --domains oooff.com --page-requisites --html-extension --convert-links -R gif,jpg,pdf http://www.oooff.com/ 

ich einfach wget Befehle versucht haben (nicht so viele Parameter) von exec() und shell_exec(), aber sie auch nicht.

Wenn wget keine Option ist, bin ich offen für eine andere Methode zum Herunterladen einer Website in ihrer Gesamtheit.

Mein Code, den ich jetzt habe, ist,

exec("wget google.com", $array); 

Dann, wenn das Drucken der Array es leer ist

+0

Was ist Ihr PHP-Code? –

+0

vielleicht hilft das: http://stackoverflow.com/questions/13980404/enable-system-and-exec-functions-on-hosting – argon

+0

@CharlSteynberg die Funktion ist aktiviert, Problem besteht weiter – Jfonts

Antwort

1

ich einen Pfad angeben musste wget. Neuer Befehl:

exec("/usr/local/bin/wget google.com", $array); 
+0

Verwenden Sie $ return_var, um darüber zu überprüfen. Wenn nicht 0, dann ist etwas schief gelaufen. –

0

invoke wget mit der richtigen Optionen

-q to remove it s information output 
-O - to output the request response on stdout 

php -r 'exec("wget -q -O - google.com", $array);var_dump($array);' 
0

In unserem Fall wget hat genug Erlaubnis nicht wget'ed Datei im aktuellen Verzeichnis zu speichern. Lösung:

$dir = __DIR__.'/777folder/'; 
exec("/usr/bin/wget -P ".$dir." --other-options"); 

wo

-P, --directory-prefix=PREFIX save files to PREFIX/... 

ps. Wir haben auch hinzugefügt /usr/bin mit whereis wget gefunden, aber in unserem System funktioniert es gut ohne es

Verwandte Themen