« first day (1301 days earlier)      last day (2020 days later) » 

6:08 PM
Hola, buen dia, alguien sabe coomo se puede activar el Fingerprint SDK 2009, ya lo intente de todas las maneras que vi en internet y nomas no queda
@Macx yo ni idea de que hablas...
@Macx ¿Conectando el cable?
@gbianchi yo en algún momento lo busqué y no encontré
37
Q: Lista de comentarios para ayudar a los nuevos usuarios

Angel AngelCreo este hilo porque JuanM ♦, me preguntó cómo podríamos ayudar mejor, y después de un rato se me ocurrió que se podría crear un hilo en el que tener varias repuesta que incluyan comentarios genéricos y así sólo se tendría que entrar en el hilo y copiar el más adecuado en base a la pregunta del ...

6:55 PM
@fredyfx yo lo estoy intentando
trato de entender lo que quieren hacer y porque
@JackNavaRow por casualidad sabes sh ?
@JackNavaRow excelente
@JuanPerez que quieres hacer
@fredyfx y tu?? entiendo que se puede hacer un clan
@JackNavaRow hay un clan de SO esp
6:57 PM
Estoy haciendo una conexión por sh a telnet ejecuto ese el comando que esta en la variable "VAR" y quiero recuperar la respuesta
@gbianchi como le llego?
@JuanPerez Si la rediriges a fichero no te sirve?
@JuanPerez una cosa es sh, otra cosa es ssh
ssh te sirven los comandos ftp para hacer lo que quieres
en realidad se conectan por el mismo puerto
sh es script en GNU/Linux
@JackNavaRow querrás decir sftp?
@abulafia si master! a usted no le puedo dejar algo ambiguo xD
7:00 PM
@abulafia No lo se a que te refieres, es que estoy armando la estructura pero la idea de esto que me traiga una lista de numero de una bd y que dentro de un for ejecute el comando con cada numero y ese resultado irlo guardando en una bd
@JackNavaRow No te entendi :@
No, es que ftp es otro protocolo (sin cifrado, ya obsoleto, y que va por otro puerto)
@gbianchi en codewars?
@fredyfx off course
joooo!!!!
@JuanPerez Me refería a poner un > salida al final de la línea | telnet
7:02 PM
¿Quién está a cargo? ¿Me invitan :3 ?
@abulafia Puede probar para ver si resulta
@abulafia es comun en script shell hacer eso @JuanPerez
-.-
Ejemplo si en la data de numeros tengo 100 numeros tiene que ejecutarse el comando 100 veces e ir guardando la respuesta
No se de que forma seria mas optimo y facil para mi e implementarlo
@JackNavaRow SOes
7:03 PM
@JuanPerez Pero yo usaría python con su módulo telnet para este tipo de cosas. Es más flexible al permitirte esperar hasta que llegue una cierta secuencia de caracteres en lugar de esperar un tiempo arbitrario con sleep
y lo que dice @abulafia es algo como stackoverflow.com/a/11407403/5695795
@abulafia Tendría que ver python nunca lo he utilizado
se usa muchi en GNU/Linux
@JuanPerez es como el auto que a primera vista no te gusta, luego apenas lo manejas no te quieres bajar de el
Pero si se entiende a lo que quiero llegar
@JuanPerez No entiendo los detalles, pero la idea general, si no me equivoco, es conectar vía telnet a una máquina, entrar en ella con un cierto login y password, y luego dentro ejecutar algún comando y recoger qué respuesta produce
Eso justamente hace el ejemplo python que te acabo de enlazar
7:06 PM
use Net::Telnet ();
$remote = new Net::Telnet (Timeout => 10,
                           Errmode => 'return');

$remote->open("sparky") or die $remote->errmsg;
$remote->waitfor('/login: $/i') or die $remote->errmsg;

$remote->print("joebob") or die $remote->errmsg;
$remote->waitfor('/password: $/i') or die $remote->errmsg;

$remote->print("passwd-for-joebob") or die $remote->errmsg;
$remote->waitfor('/\$ $/') or die $remote->errmsg;

$remote->print("df -k") or die $remote->errmsg;

($output) = $remote->waitfor('/\$ $/')
perl tiene algo asi
y lo bueno es que una vez lo tienes recogido en una variable python puedes usar cualquier función de procesamiento de cadenas para aislar la parte que te interesa de esa salida
@abulafia Si correcto eso es lo que necesito, pero el comando se debe ejecutar "N" veces dependiendo de los numeros que se encuentren en una bd
@JackNavaRow Con perl lo trate de utilizar y no me ha podido funcionar, de hecho hice una pregunta en el sitio es.stackoverflow.com/questions/266158/…
@fredyfx eh.. no tengo que agregarte.. unite al clan!
7:08 PM
Cuando hayas conseguido hacerlo una vez, es cosa de meterlo en un bucle, y parametrizarlo con lo que necesites
@fredyfx te puedes unir bro, buscando SOes
yo soy mvidal ahí
63 ptos xd
so nob
@byte96 eres mariu!!!!!!
:p
@abulafia Es necesario tener estas librerias en el servidor import getpass
import sys ? O basta con solo instalar python
@gbianchi como viene ser mod ? te dieron tu taza ?
@gbianchi :v
esas son librerías de python, ya vienen con él
7:09 PM
@byte96 ni taza ni buzo ni calcomanias ni nada.. me mintieron horriblemente...
en qué operativo estás?
@gbianchi jajajajajaja dios
@gbianchi escribi el clan pero no me veo
@byte96 ¿En dónde?
7:10 PM
@JackNavaRow SOes, asi con mayusculas y minusculas
@gbianchi -.-
@JackNavaRow donde dice clan en el perfil...
joder ya lo vi
@gbianchi ad honorem
@byte96 mal
7:11 PM
y ya esta fredy tambien!!! \o/
@JuanPerez Entonces python ya te viene instalado, y esas librerías también
Y por cierto, pronto Python vendrá también preinstalado en Windows 10! \o/
@gbianchi no me sale el clan x.x
@JackNavaRow yeeeeehhhh!!!!
pero si estas ahi!
edita tu perfil
en donde dice clan escribes el nombre del clan
(@fredyfx.in_capa8 = true)
7:14 PM
MINIMAL REPRODUCIBLE EXAMPLE.. que feo...
porque lois tiene una franela de Stackoverflow y @gbianchi no?
eso se llama ser carbonero xD
@JackNavaRow horrible
Y MI TAZA @g3rv4?
@gbianchi quizas no te quieran decir que tienes la variable moderadorFalso = true
@gbianchi ah no te llegó? se la debe haber llevado el hacker
@abulafia si eso estaba viendo en el servidor que ya esta instalado.. voy a probar ese código bro
7:17 PM
me hace recordar a esto
25
A: Tenemos un nuevo moderador: g3rv4

g3rv4Actualización: A partir del 2 de abril de 2019 no soy más moderador de SOes :) pedí esto para poder participar como un usuario más, votando, haciendo reportes y opinando sin el diamante en el medio. Hace varios meses que no uso el diamante. Gracias Juan! Para dar un poco de detalles de por qu...

es interesante el funcionamiento de los clanes
pensé que se creaba un grupo, había un proceso de aceptación, lo clásico
y si posteamos esto en META
@fredyfx +1
capaz se animan más usuarios a desarrollar sus habilidades algorítmicas
@JackNavaRow esta en true.. que si no no veria tantos botones :p
@fredyfx nada.. pones el nombre y ya esta...
@abulafia Si necesito pasarle los 2 parametros de login en una sola linea ?
7:27 PM
@gbianchi y listo, ahí publiqué un tuit para darle caña como dicen en España :D
@JuanPerez No te entiendo
@abulafia Osea para poderme conectar a la central tengo que escribir "user pass" los dos juntos
El ejemplo de la página que te enlacé supone que el servidor al que intentas conectar te muestra en pantalla un mensaje que dice "login:" y que entonces le envías el usuario. Y que el servidor te responde entonces con otro que dice "Password:" y entonces le envías la contraseña
Por eso tiene cosas como tn.read_until("login: ")
si en tu caso el servidor no tiene ese tipo de mensajes, tendrás que adaptar el código
por ejemplo: tn.write(user + " " + password + "\r\n")
Si tengo que logearme solo que no van por separado van los 2 juntos separados por espacios
(por cierto que he visto que en esa página el código sale mal, pues el "\r\n" lo muestra como un retorno de carro en mitad de la cadena)
Al final de la página de documentación de telnetlib de python tienes otro ejemplo similar, y este sí se ve bien
Mira con python --version cuál tienes instalada
7:38 PM
Se queda ahi
Tengo la Python 2.7.5
Entonces no mires la documentación que te acabo de enlazar sino esta otra
Si igual no cambio mucho el codigo
A ver, tienes que adaptar este código a tu servidor telnet concreto. Si dices que no envía ningún texto que diga "login", entonces cuando le pides a python que espere a recibir el texto "login" va a estar esperando por siempre
Cuando entras por telnet en ese sistema ¿tienes un shell remoto? Porque si no a lo mejor tampoco funciona lo de enviarle un "exit"
@abulafia Por telnet puedo acceder sin problemas con las credenciales que tengo
básicamente tienes que probar antes a entrar "manualmente" en ese sistema y darle "manualmente" los comandos, para fijarte en cuál es el "diálogo". Es decir, qué mensajes te envía el sistema remoto a cada uno
7:45 PM
Y lo primero que me pide es el login y solo acepta :
Ya, pero ¿cómo entras? Dicho de otro modo. Cuando pones "telnet" en línea de comandos ¿qué es lo primero que te responde el servidor remoto?
juan soporte
De esa manera puedo acceder
Y cómo te pide el login. Con qué mensaje exactamente
porque ese es el que le tienes que decir a Python que debe esperar
Eso es lo que aparece al conectarme a la maquina
@JuanPerez y donde ves que diga login ahi??
7:48 PM
Claro, pues como ves no dice "login"
o sea.. no tenes que esperar a leer login..
en cambio dice ">"
Tendria que colocarle ese mensaje que aparece ?
ese es el carácter que tienes que esperar. Ese es el que te está "invitando" a enviar tu nombre y contraseña
no, sólo el ">"
@JuanPerez es importante no solamente que copies y pegues codigo, si no que entiendas lo que hace el codigo... de esa forma te vas a ahorrar miles de dolores de cabeza...
7:49 PM
@gbianchi Comprendo
Tu codigo tiene una funcion que dice read_until... que por lo que uno podria esperar, es leer hasta que pase algo... y ese algo que tiene que pasar es darte el control a vos...
Y ya que estamos. Una vez has enviado tu nombre y contraseña a ese servidor ¿accedes a un shell? ¿O es algún otro tipo de interfaz?
entonces, como bien te dice @abulafia, tenes que replicar el ingreso como si fuera a mano....
Dicho de otro modo ¿puedes teclear allí ls? ¿o exit?
o qué comando podrías teclearle que te funcione
lo primero que haces es esperar el >... luego ingresas tu usuario y password.. y esperas supongo hasta que aparezaco otro >....
7:51 PM
No he probado a otros comandos solo ejecuto

traver l 0123456789 133 ainres icsx cont nt
Tu codigo esta replicando tus dedos y tus ojos... read_until son tus ojos.. write tus dedos...
@JuanPerez pues entonces ese es el comando que debes enviar desde python, y no ls o exit como pusiste en el código que copiaste del ejemplo
tendria entonces que pasarlo a la funcion read_until los parametros de login
no
read_until dice a python "lee todo lo que el servidor te envíe hasta que aparezca esto"
y el "esto" es lo que le pasas como parámetro
tn.write(user + " " + password + "\r\n")
7:52 PM
o sea: read_until(">") en este caso
tn.read_until(">")
Claro asi lo tengo
y una vez que ha recibido el ">" entonces ya sabes que después puedes hacer el tn.write()
tn.write(user + " " + password + "\r\n")
no sé si tienes que usar "\r\n" o "\n" solo. Eso depende del servidor. Tendrás que probar
intenta esto
import telnetlib

HOST = "111.1.123.1"
user = "juan"
password = "soporte"

tn = telnetlib.Telnet(HOST)

tn.read_until(">")
tn.write(user + " " + password  + "\n")
tn.write("traver l 0123456789 133 ainres icsx cont nt\n")
print tn.read_all()
7:57 PM
A lo mejor necesitabas otro tn.read_until(), pero habría que saber qué texto debes esperar. ¿Qué te responde el servidor cuando lo usas interactivamente una vez has hecho login?
¿Podrías poner una captura de pantalla de una sesión completa, desde que conectas, metes tus credenciales, metes un comando, y finalmente metes exit?
así podremos ver qué respuestas envía el servidor, para saber qué es lo que hay que esperar con `read_until()
A lo mejor también hace falta un `tn.write("exit\n") justo antes de la última línea
O a lo mejor es que debías haber usado \r\n en vez de \n. Aparentemente el servidor no ha respondido nada y por eso python queda colgado esperando la respuesta. Y si no ha respondido nada es que tal vez está esperando aún el fin de línea
Es muy difícil desde aquí saber exactamente qué pasa. Deberías intentar comprender lo que estás haciendo para así poder guiar tus experimentos y descubrirlo tú mismo
Si bro
Voy a intentar colocar \r\n
#!/bin/sh
HOST='111.1.123.1'
USER='juan'
PASSWD='soporte'
VAR="traver l 0123456789 133 ainres icsx cont nt"
CMD=''
(
echo open "$HOST"
sleep 2
echo "$USER $PASSWD"
sleep 2
echo "$VAR"
sleep 2
echo "$CMD"
sleep 2
echo "exit"
)| telnet
Con sh me conecto asi sin problemas
\n es "nueva línea". Algunos servidores esperan en cambio \r\n que es "retorno de carro + nueva línea"
@JuanPerez Eso te funciona?
Si
se conecta y muestra en pantalla la respuesta
8:03 PM
En ese caso intenta lo siguiente, que es prácticamente una traducción literal de tu código sh
import telnetlib
import time

HOST = "111.1.123.1"
user = "juan"
password = "soporte"

tn = telnetlib.Telnet(HOST)

time.sleep(2)
tn.write(user + " " + password  + "\n")
time.sleep(2)
tn.write("traver l 0123456789 133 ainres icsx cont nt\n")
time.sleep(2)
tn.write("exit\n")
time.sleep(2)
print tn.read_all()
Intenta de momento el último código que te acabo de dar y dime si va
en vez de esperar por cierto texto en la respuesta, espero 2 segundos, como hacía tu script sh
Mira asi es cuando me conecto a la maquina
Ok voy a probar
igual se queda colgado
:-/
Prueba este otro
import telnetlib
import time

HOST = "111.1.123.1"
user = "juan"
password = "soporte"

tn = telnetlib.Telnet(HOST)

pantalla_inicial = tn.read_until(">")
print pantalla_inicial

tn.write(user + " " + password  + "\n")

pantalla_entrada = tn.read_until(">")
print pantalla_entrada

tn.write("traver l 0123456789 133 ainres icsx cont nt\n")

respuesta_comando = tn.read_until(">")
print respuesta_comando

tn.write("exit\n")
despedida = tn.read_all()

print despedida
Este algo debería imprimir, aunque se quede colgado al final
Lo que hace este es "capturar" todo lo que el servidor le envía hasta un ">", y lo muestra. Después va enviando diferentes comandos y para cada uno vuelve a capturar todo lo que el servidor le envíe hasta el siguiente ">"
8:09 PM
Bueno, es un avance. La pantalla de bienvenida la recibimos bien. Después parece ue se queda colgado esperando la respuesta al login
prueba a cambiar los \n por \r\n en todo el código
Voy
Igual se queda colgado
En el mismo punto?
Si
Que raro
8:13 PM
Pues ya no entiendo nada. Pero lo que parece es que de alguna forma al servidor no le llegan las credenciales que le enviamos
y por eso no responde nada, y por eso python se cuelga esperando esa respuesta
tn.write(user + " " + password + "\r\n")
Y aqui no le podemos escribir manual si llamar una variable ?
"\r\n"
Es necesario pasarle ?
pregunta cuando te logueas vos escribis (textual)
miusuario mipassword
y le das enter?
si correcto
y ahi que pasa?
@JuanPerez sí, es el retorno de carro. Y el ejemplo de script sh que pusiste hace un echo "$USER $PASSWD" que también envía al final un retorno de carro aunque aquí no se ponga porque lo hace echo automáticamente
8:17 PM
@abulafia esto no tiene un writeln que mande automaticamente el enter?
@gbianchi eso es lo que me muestra al darle enter
@gbianchi No, esta librería es de bastante bajo nivel. Opera a nivel de bytes y tienes que ser explícito con lo que mandas
@abulafia perfecto.. y no puede ser que tome el \r como un escape de texto, y no como que tiene que mandar eso directamente?
de mi parte es hablemos sin saber a ver si baja una idea eh...
si me voy por las ramas me pegas un sopapo
No se puede verificar si se estan enviando las credenciales tn.write(user + " " + password + "\r\n") bien en esa linea ?
@gbianchi Efectivamente, es que \r es un escape de texto, no es que deba enviar esa secuencia de dos caracteres, sino el carácter de control ASCII-13 (que se representa por \r en el código)
@JuanPerez Puedes probar a poner justo después un print tn.read_some() a ver qué sale
8:20 PM
@abulafia estoy de acuerdo.. es chr(13)+char(10).. y no puede mandarlos via char?
al ejecutar el comando desde la maquina esa es la respuesta que me trae
@gbianchi Si, pero es lo mismo
@abulafia ok no digo mas nada..
@gbianchi tn.write(user + " " + password + chr(13) + chr(10)) dices, no? Es lo mismo
Traceback (most recent call last):
File "prueba.py", line 14, in <module>
print tn.read_some(user)
TypeError: read_some() takes exactly 1 argument (2 given)
print tn.read_some(user)
8:25 PM
No pongas lo de user
esto:
import telnetlib
import time

HOST = "111.1.123.1"
user = "juan"
password = "soporte"

tn = telnetlib.Telnet(HOST)

pantalla_inicial = tn.read_until(">")
print pantalla_inicial

tn.write(user + " " + password  + "\n")
time.sleep(2)

pantalla_siguiente = tn.read_some()
print pantalla_siguiente

tn.write("traver l 0123456789 133 ainres icsx cont nt\n")

respuesta_comando = tn.read_until(">")
print respuesta_comando

tn.write("exit\n")
despedida = tn.read_all()

print despedida
Lo que hacemos aquí es: 1) conectar. 2) esperar hasta que llegue el primer ">" (eso vimos que funcionaba). 3) Enviar credenciales 4) esperar 2 segundos 5) leer lo que haya en la respuesta, sea lo que sea. Si no hay nada se colgará ahí, si hay algo lo veremos
me imprimio ahora eso
Ah, coño, espera...
estamos esperando a que llegue el primer ">"
pero es que llega uno antes, como parte del mensaje "^Bhx <Enter>"
Ese primero hay que saltárselo entonces, y esperar por el siguiente
Estaria demas no ?
8:29 PM
A ver, cruzo los dedos. Creo que lo siguiente debería funcionar
import telnetlib
import time

HOST = "111.1.123.1"
user = "juan"
password = "soporte"

tn = telnetlib.Telnet(HOST)

pantalla_inicial = tn.read_until(">")
print pantalla_inicial

pide_credenciales = tn.read_until(">")
tn.write(user + " " + password  + "\n")

pantalla_siguiente = tn.read_until(">")
print pantalla_siguiente

tn.write("traver l 0123456789 133 ainres icsx cont nt\n")

respuesta_comando = tn.read_until(">")
print respuesta_comando

tn.write("exit\n")
despedida = tn.read_all()

print despedida
Como ves ahora hay dos read_until(">") antes de enviarle las credenciales
el primero será para leer hasta el mensaje que dice "<Enter>" y el segundo para leer hasta el prompt que nos invita a identificarnos
Me rindo
y me frustro
:(
imaginate como estoy yo
probe con perl y tampoco me funciono
:(
Bueno, pero dices que la versión sh te funcionaba no? Por qué no la usas?
Si me funciona, pero no se como podria obtener la respuesta del comando
8:33 PM
No dices que te la muestra en pantalla?
Si me la muestra en pantalla
pues redirige a fichero
#!/bin/sh
HOST='111.1.123.1'
USER='juan'
PASSWD='soporte'
VAR="traver l 0123456789 133 ainres icsx cont nt"
CMD=''
(
echo open "$HOST"
sleep 2
echo "$USER $PASSWD"
sleep 2
echo "$VAR"
sleep 2
echo "$CMD"
sleep 2
echo "exit"
)| telnet > respuesta.txt
Fijate el sh me ejecuta todo
y me arroja el resultado en pantalla
Pero has probado con la redirección?
como te acabo de indicar
lo probe
en el txt respuesta me agrega todo todo
8:37 PM
ya
pero al menos ahi lo tienes. Sólo quedaría procesarlo para extraer lo que te interese
y cuando se tenga que ejecutar las "n" numeros me va a generar un txt ?
Un último intento. Me juego mi honor a que esto debería funcionar, y si no hay algo muuy raro. Es una traducción literal de tu script sh
import telnetlib
import time

def espera():
    time.sleep(2)


HOST = "111.1.123.1"
credenciales = "juan soporte"
VAR = "traver l 0123456789 133 ainres icsx cont nt"
CMD = ""

tn = telnetlib.Telnet(HOST)

espera()
tn.write(credenciales  + "\n")

espera()
tn.write(VAR + "\n")

espera()
tn.write(CMD + "\n")

espera()

respuesta = tn.read_all()
print respuesta
voy a probar
Ay, no. Olvidé el exit
8:40 PM
import telnetlib
import time

def espera():
    time.sleep(2)


HOST = "111.1.123.1"
credenciales = "juan soporte"
VAR = "traver l 0123456789 133 ainres icsx cont nt"
CMD = ""

tn = telnetlib.Telnet(HOST)

espera()
tn.write(credenciales  + "\n")

espera()
tn.write(VAR + "\n")

espera()
tn.write(CMD + "\n")

espera()
tn.write("exit\n")

respuesta = tn.read_all()
print respuesta
@SebastiánLagosYañez Sip
Al ejecutar no muestra nada
que python es? el 2 o el 3 ?
consulta existira algun problema con las line en unix ?
2.7.16
@JuanPerez A qué te refieres
8:45 PM
es que sublime siempre tiene una funcion de line endings -> windows, unix
@JuanPerez ese python le instalaste esos paquetes?
import telnetlib
import time
aparentemente vienen instalado en el paquete de python
@JuanPerez Eso precisamente es lo de \n vs \r\n que también estuvimos probando. Aunque telnetlib debía de ocuparse de eso automáticamente, creo.
El problema debe de estar en otra parte, pero no lo vemos
Si
Y lo del Prompt
Porque yo tuve problemas con eso
/>/
Asi yo lo tengo
Y en la documentacion de perl

Prompt => '/bash\$ $/'
Y con esa no me funciona sino con "/>/"
O no tiene nada que ver con python
Llegaban dos >... tienen que esperar el tercero... se dieron cuenta?
8:58 PM
cual es la versión del telnetlib
@SebastiánLagosYañez como la miro ?
no me deja entrar a las credenciales que tienes ahí
no puedes entrar es una intranet
buuuu , entonces como lo pruebo?
no se bro como pueda darte acceso
9:05 PM
@gbianchi Sí, me acabo de dar cuenta
Pero no sé por qué de todas formas no funciona mi otra versión que no espera por ">" sino simplemente espera 2seg
@JuanPerez El prompt es importante para leer la respuesta del servidor por "trozos", asumiendo que cada trozo está delimitado por una aparición del prompt (">"). Pero la hipótesis se nos rompe cuando ">" aparece por ahi más veces y no es el prompt
Ah ok comprendo
Quizás podamos esperar por "\n>" para que sólo encaje con los > que haya al inicio de una línea y así descartar los otros
mira así me funciona
import telnetlib
import time

HOST = "www.google.com"
credenciales = "juan soporte"
VAR = "traver l 0123456789 133 ainres icsx cont nt"
CMD = ""

tn = telnetlib.Telnet(HOST,"80")

tn.write(credenciales  + "\r\n")

tn.write(VAR + "\r\n")

tn.write(CMD + "\r\n")

tn.write("exit\r\n")

print tn.read_all()
espera que le agrego las cosas
ahhh ok
¿www.google.com?
pero eso es un servidor web, no un servidor telnet
no es equivalente
intenta esto
import telnetlib
import time

def espera_prompt():
    return tn.read_until("\n>")


HOST = "111.1.123.1"
credenciales = "juan soporte"
VAR = "traver l 0123456789 133 ainres icsx cont nt"
CMD = ""

tn = telnetlib.Telnet(HOST)

espera_prompt()
print "======= ENVIANDO CREDENCIALES ============"
print tn.write(credenciales  + "\n")

espera_prompt()
print "======= ENVIANDO COMANDO VAR ============="
print tn.write(VAR + "\n")

espera_prompt()
print "======= ENVIANDO COMANDO CMD ============="
print tn.write(CMD + "\n")
Algo tiene que verse
y según lo que se vea a lo mejor me entero de una vez de qué &%$#! está pasando
======= ENVIANDO CREDENCIALES ============
None
no me funciona
9:12 PM
Eso es lo que me muestra
ay, espera, fallo mío
import telnetlib
import time

def espera_prompt():
    return tn.read_until("\n>")


HOST = "111.1.123.1"
credenciales = "juan soporte"
VAR = "traver l 0123456789 133 ainres icsx cont nt"
CMD = ""

tn = telnetlib.Telnet(HOST)

print "======= ESPERANDO PRIMER PROMPT =========="
print espera_prompt()
print "======= ENVIANDO CREDENCIALES ============"
tn.write(credenciales  + "\n")

print espera_prompt()
print "======= ENVIANDO COMANDO VAR ============="
tn.write(VAR + "\n")

print espera_prompt()
eso es lo que muestra
@SebastiánLagosYañez ¿El qué? No te puede funcionar mi código porque la IP a la que intenta conectar es privada y sólo Juan puede ejecutarlo. Yo tampoco puedo conectar, por eso me es tan difícil depurar el problema
no envia las credenciales ?
Pues se ve que no
9:16 PM
que raro
Otra versión más
import telnetlib
import time

def espera_prompt():
    print "----- Esperando respuesta -------"
    return tn.read_until("\n>")


HOST = "111.1.123.1"
credenciales = "juan soporte"
VAR = "traver l 0123456789 133 ainres icsx cont nt"
CMD = ""

tn = telnetlib.Telnet(HOST)

print "======= ESPERANDO PRIMER PROMPT =========="
print espera_prompt()
print "======= ENVIANDO CREDENCIALES ============"
tn.write(credenciales  + "\r\n")

print espera_prompt()
print "======= ENVIANDO COMANDO VAR ============="
@abulafia si lo se
Alli ejecuto todo
aparentemente esta bien
9:22 PM
¡¡POR FIN!!
Bueno, pues entonces el problema era debido a dos factores, y nunca los habíamos atacado juntos, sólo por separado: 1) Venían varios ">" antes del primer prompt y 2) Hay que enviar \r\n en vez de \n
Osea habia que mandarlo aqui junto "\n>"
Sí, eso es para que considere sólo como un prompt válido la secuencia "retorno de carro" seguido de ">"
y así no tome en cuenta otras apariciones de ">" que no vayan precedidas de retorno de carro
Ahhh ok
bueno, entonces una vez depurado el problema, el siguiente código más simple debería servirte para capturar la salida del comando
import telnetlib

def espera_prompt():
    return tn.read_until("\n>")


HOST = "111.1.123.1"
credenciales = "juan soporte"
VAR = "traver l 0123456789 133 ainres icsx cont nt"
CMD = ""

tn = telnetlib.Telnet(HOST)

espera_prompt()
tn.write(credenciales  + "\r\n")

espera_prompt()
tn.write(VAR + "\r\n")
respuesta = espera_prompt()

print("===== RESPUESTA AL COMANDO ==========")
print respuesta

tn.write("exit\r\n")
salida = tn.read_all()
print salida
Y con eso me retiro por hoy. Buenas noches (a quienes estén en mi huso horario :-))
@abulafia gracias hermano te debo una (Y)
Buenas noches
Gracias por el tiempo y la ayuda..
9:29 PM
No iba a dormir tranquilo sin resolverlo :-)
Imaginate, como estaba yo con esto :(
XD
me encanta esta comunidad
mucho amor
y códificación
Lo mejor que he conocido en internet xD
@SebastiánLagosYañez que curso de python me recomiendas ?
@JuanPerez yo hice uno super básico de youtube
en realidad lo hice para aprender hacer scrapping
Y tal ? Lindo el scrapping en python por lo que he visto.
9:44 PM
es hermoso
de los mejores en mi opinión
Si yo nunca lo he utilizado pero si he buscado y me ha parecido bien
es muy nativo todo , y muy sencillo de usar
Aqui se utiliza mucho con el django
9:45 PM
lo único es saber que paquetes utilizar , pero casi todos usan los mismos
yo solamente he probado python nativo
no me he metido más
pero me interesa usarlo más
Si es bueno
Yo creo que va hacer el futuro
es que ademas es super bien pagado python
Si por eso
de donde eres bro ?
Si ? buena yo igual
10:01 PM
de que parte eres @JuanPerez
Santiago bro y tu ?
10:26 PM
nos vemos!
11:11 PM
addFriend(user) {
console.log('EEEEEE');
const url = 'http://localhost:8080/meet/friend';
return this.http.post(url, {userId: user.id, userId2: user.id});
}
que de malo tiene mi codigo?
quiero hacer peticion de angular a spring
11:25 PM
aqui esta mi pregunta
0
Q: Peticion post en angular

hubmanquiero agregar un usuario-amigo, este es mi codigo de angular. addFriend(user) { const url = 'localhost:8080/meet/friend'; return this.http.post(url, {userId: user.id, userId2: user.id}); } pero solo obtengo erro 400, cual es el problema?. este es mi endpoint @PostMapping("/friend") ...

@Blazerg muchas gracias por tu respuesta, eres un crack!!!

« first day (1301 days earlier)      last day (2020 days later) »