I tun haben Erlaubnis, dies zu tun.Ubuntu: Wie kann man ein Feld von mehreren Websites herunterladen?
Ich habe eine Website mit ca. 250 Seiten, von der ich die "Produktbeschreibungen" und "Produktbilder" herunterladen muss. Wie mache ich es? Ich möchte die Daten in eine CSV-Datei exportieren, damit ich sie in eine DB-Tabelle schreiben kann. Könnte mich jemand auf ein gutes Tutorial hinweisen, um damit anzufangen? Ich sollte cURL benutzen, oder?
Bisher habe ich diese aus einem anderen Stackoverflow Seite, How do I transfer wget output to a file or DB?:
curl somesite.com | grep sed etc | sed -e '/^(.*)/INSERT tableName (columnName) VALUES (\1)/' |psql dbname
Und ich schuf dieses, das zu bekommen, die Bilder saugt:
#!/bin/bash
lynx --source "www.site.com"|cut -d\" -f8|grep jpg|while read image
do
wget "www.site.com/$image"
done
durch dieses Video ansehen: http://www.youtube.com/watch?v=dMXzoHTTvi0 .
Wenn Sie die Berechtigung haben, würden Sie nicht die Dateien lokal haben (dh müssen sie nicht als Websites mit Curl zugreifen?) – Fosco
If Sie wollen umständlichen Code, dann ja die Fiddly Curl API ist in der Tat PHPs HttpRequest, PEAR Http_Request oder Zend_Http bevorzugen. Wenn es sich um eine einmalige Download-Sache handelt, könnte ein einfaches 'wget -p http: // example.org/prodcuts/*' einfacher sein. – mario
Perl ''WWW :: Mechanize' kommt in den Sinn. Wahrscheinlich ein besseres Werkzeug für den Job als PHP (hauptsächlich, weil CPAN großartig ist) – derobert