Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: 177600531 en 29 Abril 2013, 17:28 pm



Título: Reanudar conexión socket en Python
Publicado por: 177600531 en 29 Abril 2013, 17:28 pm
Tengo un problema con los sockets en Python, lo que intento hacer es que el servidor intente reanudar la conexión una y otra vez mediante un socket hasta que encuentre un cliente conectado.

Código
  1. host = 'localhost'
  2. port = 8900
  3. s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  4. try:
  5. s.connect((host, port))
  6. except:
  7. print 'Error'
  8. else:
  9.       #

Se conecta y funciona todo perfectamente pero como puedo hacer que en caso de que no encuentre al cliente no pase al except si no que intente cada 30 segundos volver a conectarse?

Lo he intentado con bucles while pero no he podido resolver el problema, agradecería que alguien me de alguna solución.

Saludos.


Título: Re: Reanudar conexión socket en Python
Publicado por: mr.blood en 29 Abril 2013, 18:39 pm
http://entrian.com/goto/

No es una buena practica de programacion, pero no se me ocurre algo mejor para este caso ;).

Sa1uDoS


Título: Re: Reanudar conexión socket en Python
Publicado por: 177600531 en 29 Abril 2013, 19:56 pm
Gracias por contestar, me he fijado en el modulo goto pero solo es posible utilizarlo en la versión 2.3 y yo actualmente la versión en la que trabajo es la 2.7.4, de igual forma he intentado implementarlo pero solo me da errores y más errores.

Agradecería mucho alguna solución más que resuelva mi problema.

Saludos.


Título: Re: Reanudar conexión socket en Python
Publicado por: daryo en 29 Abril 2013, 20:24 pm
que tal algo asi?

Código
  1. import time
  2. def conexion()
  3.    host = 'localhost'
  4.    port = 8900
  5.    s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
  6.    s.connect((host, port))
  7.    blah blah
  8. while True:
  9.    time.sleep(10)
  10.    try:
  11.       conexion()
  12.    except:
  13. pass
  14.  


Título: Re: Reanudar conexión socket en Python
Publicado por: 177600531 en 29 Abril 2013, 20:35 pm
Funcionaaa, gracias man i love you  :xD ;-) :-*


Título: Re: Reanudar conexión socket en Python
Publicado por: daryo en 29 Abril 2013, 21:35 pm
Funcionaaa, gracias man i love you  :xD ;-) :-*

jaja por nada  :-*