¿Usas cURL para descargar imágenes en el feed XML?

Tengo un archivo XML que tiene enlaces a varios .jpg. Quiero crear un applescript que descargue una copia local de estos. La idea es también etiquetarlos secuencialmente con un número, por ejemplo, del 001 al 030.

Cada vez que ejecuto el script, quiero que las imágenes se sobrescriban con las nuevas.

Aquí está el archivo XML que necesito usar: http://tweetriver.com/hud_ro/steer_filtered.xml?include_entities=1

¿Alguien puede ayudar?

¿Has escrito algún guión para que lo veamos? ¿Hay algún idioma en el que debería implementar este script?

Respuestas (2)

Si una solución de script de shell también es aceptable, intente lo siguiente

#!/bin/bash
URL='http://tweetriver.com/hud_ro/steer_filtered.xml?include_entities=1'
i=0
for u in $(curl -s "$URL" |
           grep jpg | 
           sed -E 's/.*<profile_image_url>(.+)<\/profile_image_url>/\1/'); do
    curl -s "$u" -o $i.jpg
    (( i++ ))
done

Por supuesto, esto solo funciona para este ejemplo XML específico y requiere que todos los archivos estén en formato jpg.

Aquí hay otro enfoque:

-- Notice last "/" on path below
set downloadFolder to "/Users/squirrel/Desktop/testFolder/"

set myImages to every paragraph of (do shell script "curl http://tweetriver.com/hud_ro/steer_filtered.xml?include_entities=1 | grep -o \\>.*jpg | sed 's/\\>//'")

repeat with i from 1 to count of myImages
    set fileName to do shell script "echo " & quoted form of (item i of myImages) & " | grep -o [^/]*$ | sed 's/\\.jpg/-" & addOs(i, 3) & ".jpg/'"
    do shell script "curl " & quoted form of (item i of myImages) & " -o " & quoted form of (downloadFolder & fileName as text)
end repeat

on addOs(myNumber, desiredDigits)
    set myNumber to myNumber as text
    set moreOs to desiredDigits - (myNumber's length)
    repeat moreOs times
        set myNumber to "0" & myNumber
    end repeat
    return myNumber
end addOs