[PYTHON] AYUDA Problema con el Modulo ftplib !!

Iniciado por Avispon99, 23 Marzo 2018, 00:56 AM

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

Avispon99

Hola a todos

Quisiera saber si algun experto en python me puede echar una mano con este problema.

Estoy haciendo un script que involucra a la libreria 'ftlib', pero hay un fragmento del codigo que no me quiere funcionar.

Es espesificamente el metodo 'login' de la clase FTP del modulo ftplib.

El fragmento de codigo que me arroja el error es el siguiente, lo saque del codigo original y lo probe por separado y efectivamente esta parte es la que me arroja el error. El codigo es el siguiente:



from ftplib import FTP

ip = raw_input("Ingrese su ip: ")
user = open("usss.txt","r")
passw = open("passs.txt","r")

us = user.readlines()
pa = passw.readlines()


conexion = FTP(ip)
cod=conexion.login(us, pa)
print cod
print "[+]CONEXION EXITOSA!"

 

Como se daran cuenta lo que estoy intentando hacer es muy simple.

Solo estoy pidiendo que el programa se conecte a un servidor FTP (que para este ejemplo es una maquina virtual con metasplotaible), y que despues de eso intente hacer login pasandole los parametros de usuario y password por medio de la lectura de unos archivos .txt que estan en un bloc de notas cada uno. En este caso ambos archivos contienen  escrito la palabra msfadmin que es el usuario y el password que tiene metasplotaible por defecto.

Sin embargo cuando ejecuto el script con en la terminal me aparece el siguiente error:

File "conect.py", line 12, in (module)
 cod= conexion.login(us, pa)
File "C:\Python27\lib\ftplib.py", line 394, in login
 resp = self.sendcmd('USER ' + user)
TypeError: cannot concatenate 'str' and 'list' objects

Como se dan cuenta el error dice que supuestamente estoy intentando concatenar un string con una lista, y que el error es en el metodo login..

Pero no se a que lista se refiere si como ven en el codigo no he declarado ninguna lista.. lastimosamente aun no tengo el nivel en python para entender bien el funcionamiento interno de la libreria y no entiendo por que me esta arrojando ese error.. he visto otros scripts identicos a este que funcionan bien y no se por que el mio no sirve..

Cabe aclarar que este error solo ocurre cuando ingreso los parametros desde un archivo.txt, por que cuando los ingreso directamente en el codigo el programa corre perfectamente..  

¿Alguien sabe como corregirlo?..  :-\

tincopasan

La verdad ni ganas de ayudar me dan porque usas python 2.x y querés usar un módulo para ftp cuando no entiendes lo básico, pero estoy aburrido.
CitarPero no se a que lista se refiere si como ven en el codigo no he declarado ninguna lista..

Código (python) [Seleccionar]
us = user.readlines()

pues readlines devuelve una lista, si como decís es solo una línea utiliza:
Código (python) [Seleccionar]
us = user.readline()
cualquier cosa otro que sepa más que yo y le guste 2.x te contestará.

Avispon99

Vengo del futuro lejano a auto responderme y lo que me hacia falta en ese entonces era un .strip() para eliminar los caracteres de escape de la lista .txt    ..   >:v

Sentex

Preguntas o peticiones en twitter o discord:

Discord: MrSentex#1227
Twitter: @fbi_sentex