[telnetlib] Problème de connexion telnet
Bonjour,
Je suis en ce moment en train d'essayer de me connecter sur un serveur en telnet pour effectuer des opérations dessus. Ne pouvant pas faire cela directement dans des fichiers batchs, j'ai décidé de me tourner vers le python. J'ai donc regardé du coté du module telnetlib en m'aidant de l'exemple sur la documentation ( http://docs.python.org/2/library/tel...dule-telnetlib ). Le problème c'est qu'au bout d'un moment le programme me retourne une erreur alors que la connexion est possible depuis un outil de connexion telnet :
Code:
1 2 3 4 5 6 7 8
| Traceback (most recent call last):
File "C:\Users\Hichem\Desktop\Client.py", line 18, in <module>
tn.read_until("Password: ")
File "C:\Python27\lib\telnetlib.py", line 319, in read_until
return self.read_very_lazy()
File "C:\Python27\lib\telnetlib.py", line 395, in read_very_lazy
raise EOFError, 'telnet connection closed'
EOFError: telnet connection closed |
voilà mon code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| # -*- coding: cp1252 -*-
import telnetlib
HOST = "10.216.200.4"
user = "user"
password = "password"
print("Infos : \nHote : {} \nUser : {} \nMot de Passe : {}".format(HOST,user,password))
print("Tentative de connexion...")
tn = telnetlib.Telnet(HOST)
print("Après : tn = telnetlib.Telnet(HOST)")
tn.read_until("login: ")
print("Après : tn.read_until")
tn.write(user + "\n")
if password:
tn.read_until("Password: ")
tn.write(password + "\n")
tn.write("ls\n")
tn.write("exit\n")
print tn.read_all() |
Le problème semble se situer au niveau du
Code:
tn.read_until("login: ")
puisque le programme n'effectue pas mon print d'en dessous.
Nouveau Problème de connexion telnet
Bonjour,
Mon nouveau code : c'est le même presque
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
# -*- coding: cp1252 -*-
import telnetlib
HOST = "10.216.200.4"
user = "user"
password = "motdepasse"
print("Infos : \nHote : {} \nUser : {} \nMot de Passe : {}".format(HOST,user,password))
print("Tentative de connexion...")
print("Après : tn = telnetlib.Telnet(HOST)")
try:
tn = telnetlib.Telnet(HOST)
tn.write('\n')
tn.read_very_eager()
tn.write(user)
tn.write('\n') # tab into the next field
tn.write(password)
tn.write('\n') # 'enter' key
tn.write("ls\n")
tn.write("exit\n")
print tn.read_all()
except:
print "Error" |
le programme me retourne une erreur :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
AIX version 5
(C) Copyrights by IBM and by others 1982, 2005.
Connexion :
AIX version 5
(C) Copyrights by IBM and by others 1982, 2005.
Connexion : Mot de passe de user :
/dev/pts/6: 3004-031 Dépassement du délai de lecture du mot de passe -- parasites éventuels sur le port |