Wie zum download von Bildern von einer Website mit phantomjs
Ich will sparen Sie einige Bilder von einer Website. Im moment bekomme ich die Pfade zu den Bildern, aber ich habe keine Ahnung, wie das erhalten und speichern Sie die Bilder mit phantomJs.
findRotationTeaserImages = ->
paths = page.evaluate ->
jQuery('.rotate img').map(-> return this.src).get()
for path, i in paths
console.log(path);
//save the image
- Ja, sorry für mein schlechtes Englisch.
- Ist Ihre
->
eine Art Kurzschrift fürfunction() { ... }
? - Ja, die die coffeescript-notation für Funktionen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß, das ist eine alte Frage, aber ist das ziemlich einfach, indem die Abmessungen und die Lage der einzelnen Bild auf die in ein Objekt, dann verändern die phantomjs Seite.clipRect, so dass die Seite.render () - Methode auf, rendert nur den Bereich, wo das Bild ist. Hier ist ein Beispiel, Schaben mehrere Bilder von http://dribbble.com/ :
Gibt es jetzt ein anderer Weg, dies zu tun.
Lösen Sie diese durch starten einer Kind-Prozess ausgeführt wird, ein Knoten-Skript, das download der Bilder:
phantomJs script:
nodeJs script
Falls die Bild-Abmessungen sind bekannt:
Ich erlebt habe, wirklich eine Menge Probleme bei der Verwendung der
render
Methode. Zum Glück habe ich endlich zwei bessere Lösung. Hier ist der code, den ich verwendet in meinem Projekt. Erste Lösung hat einige Probleme zu aktualisieren, das cookie, also es kann nicht gut funktionieren, wenn das abrufen captcha-Bild. Beide Verfahren verursachen eine neue http-Anforderung. Aber mit ein paar Modifikationen, die zweite kann ommit solche Art von Anforderung.Der erste holt das cookie von
phantomJs
und macht eine neue http-Anforderung mithilferequest
. Der zweite verwendetbase64
um das Bild.