¿Cómo puedo usar el telnetlib de python para obtener datos de un dispositivo durante un período de tiempo fijo?
Me estoy conectando a un dispositivo de hardware a través de telnet. Ese dispositivo es bastante simple en términos de E / S. Entonces le envío un comando, y después de eso, el dispositivo bombea datos una línea a la vez, una vez por segundo. Cada línea solo contiene un número.
Así que mi pregunta es esta: si me conecto a este dispositivo usando el telnetlib de python, ¿cómo puedo obtener datos durante un período de tiempo fijo (o un número fijo de líneas de datos)?
He intentado usar todos los diversos comandos read_, pero todos parecen bloquearse indefinidamente, aparte de read_until, que no puedo usar ya que la salida no se puede usar para determinar cuándo parar.
(Estoy ejecutando python 2.5 bajo Cygwin, por cierto).
Edit: Tal vez la verdadera pregunta es, ¿debería usar telnetlib para esto, o debería usar el módulo de socket?