Author Topic: Subir archivos a un FTP con python  (Read 394 times)

pinguinoerrante

  • %eax
  • *
  • Posts: 1
    • View Profile
    • El Pingüino Errante
Subir archivos a un FTP con python
« on: January 28, 2010, 03:53:06 AM »

Programa sencillo escrito en python para subir archivos a un servidor FTP

#!/usr/bin/python
import sys
import os.path
import re
from ftplib import FTP

if(len(sys.argv) > 1):
   host="dominio"
   user="usuario"
   password="password"
   ftp = FTP(host,user,password)
   print ftp.getwelcome()
   print "\nLos siguientes Archivos se encuentran en el servidor…\n"
   #Actualización 28-01-2010 14:38
   #Originalmente olvide omitir la siguiente linea, esto hace un cambio de directorio
   #(digamos que un "cd files") la pongo como comentada por si alguien requiere
   #algo así
   #ftp.cwd("files")
   ftp.retrlines(‘LIST’)
   argumento=0
   print "Subiendo Archivos…\n"
   for un_archivo in sys.argv:
      if (argumento>0):
         name=os.path.basename(un_archivo)
         archivo=open(un_archivo,"rb")
         print " > Subiendo "+un_archivo
         ftp.storbinary(‘STOR ‘+name,archivo)
         print " * Archivo "+un_archivo+" subido correctamente"
      argumento=argumento+1
   print "\n"
   print "Envio exitoso\nLos siguientes archivos se encuentran ahora disponibles…\n"
   ftp.retrlines(‘LIST’)
   ftp.quit()
else:
   print "falta especificar un archivo"

« Last Edit: January 29, 2010, 02:41:35 AM by pinguinoerrante »
Logged

ksaver

  • %eax
  • *
  • Posts: 4
  • I'm a n00b!
    • View Profile
Re: Subir archivos a un FTP con python
« Reply #1 on: January 28, 2010, 10:08:03 PM »

Saludos!

Interesante, lo probaré de inmediato :-)

Yo por lo general utilizo un comando de la shell (bsd) para subir archivos al ftp:

Code: [Select]
$ ftp -u  ftp://username:password@ftp.any.server.net/dir/subdir/  archivo_a_subir.ext
Lo malo que el ftp de linux no cuenta con esa opción por default...
Logged

vendetta

  • shellcode
  • %eax
  • *****
  • Posts: 33
    • View Profile
Re: Subir archivos a un FTP con python
« Reply #2 on: January 29, 2010, 10:35:57 AM »

Y como buen BSD, OS X tambien tiene esta opcion ;)
Logged