Script para subir a ImagesShack

Iniciado por [u]nsigned, 19 Noviembre 2009, 18:58 PM

0 Miembros y 1 Visitante están viendo este tema.

[u]nsigned

Buneo, primero quiero postear este codigo:

Código (html4strict) [Seleccionar]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
<title>ImageShack (TM) - Hosting</title>
</head>
<body>
<form action="http://ufo.imageshack.us/" method="post" enctype="multipart/form-data">
<input class="textfield" name="fileupload" size="30" type="file"><br>
<input type="submit">
</form>
</body>
</html>


Es un formuario para subir imagnes IS que puede ser usado en locla, ya lo he probado y funciona. Asi que los datos que se envian por post son los siguiente:
fileupload: es la direccion de la imgen en nuestra pc.
http://ufo.imageshack.us/: es la url a la que se envia el form meidante POST.

Asi que me puse a probar una fomra de subir imagenes mediante bash, tengo el siguiente script:
Código (bash) [Seleccionar]
#/bin/bash
#Compruebo que reciv un solo UN parametro
if [ $# != 1 ]; then
  echo "Error: debe ingresar la imagen a a subir"
  exit
fi
#Compruebo que la imagen exista
if [ ! -f $1 ]; then
  echo "Error: La imagen no existe"
  exit
fi
IMG="$(pwd)/$1" #es la url de la imagen en mi pc
curl -d "fileupload=$IMG" http://ufo.imageshack.us/ > salida.html
echo "FIN"


El problema es que en salida.html no obtengo la pagina con el link a la imagen subida, sino que vuelvo a obtener el form de subida, es decir no me esta funcionando la linea donde uso curl.

Mi pregunta es si debe usar algun parametro para indicar el enctype="multipart/form-data" en curl. O por que no me funciona?..agradeceria un poco de orientacion.. :P

Saludos

No hay atajo ante la duda, el misterio se hace aquí...
Se hace carne en cada uno, el misterio es existir!

Novlucker

Creo que tu problema esta en que para el envío de archivos no se puede utilizar el post así como así, pasando la ruta del archivo como parámetro, si fuera así sería fácil robar información de otras máquinas, bastaría con crearnos un php que suba archivos, y pasar un link a nuestra víctima en cuyos parámetros vayan archivos de los cuales conocemos sus rutas, habría que conocer sus rutas, pero sigue siendo un peligro  :P

En el caso de CURL, intenta con el parámetro -F, algo así ...

Código (bash) [Seleccionar]
#/bin/bash
#Compruebo que reciv un solo UN parametro
if [ $# != 1 ]; then
echo "Error: debe ingresar la imagen a a subir"
exit
fi
#Compruebo que la imagen exista
if [ ! -f $1 ]; then
echo "Error: La imagen no existe"
exit
fi
IMG="$(pwd)/$1" #es la url de la imagen en mi pc
curl -F "fileupload=@$IMG" http://ufo.imageshack.us/ > salida.html
echo "FIN"


Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

SuperDraco

buen script!!! que pena que no lo haya visto aun en batch xD


por si te interesa, hay un addon para firefox que se llama "imgur uploader" que sirve para subir cualquier foto que esté en internet, desde el menú del ratón.

saludos.
No he vuelto, solo estoy de paso.