Comment puis-je utiliser python telnetlib pour récupérer des données à partir d'un appareil pour une période fixe de temps?

Je me connecte à un périphérique matériel via telnet. Ce dispositif est assez simple en termes d'I/O. j'ai Donc soumettre une commande, et après que l'appareil pompes de données, une ligne à la fois, une fois par seconde. Chaque ligne contient un nombre.

Donc ma question est: si je le connecter à cet appareil à l'aide de python telnetlib, comment puis-je récupérer les données pour une période de temps fixe (ou un nombre fixe de lignes de données)?

J'ai essayé d'utiliser tous les différents read_ commandes, mais ils ont tous l'air de bloquer indéfiniment, en dehors de read_until, que je ne peux utiliser que la sortie ne peut pas être utilisé pour déterminer le moment d'arrêter.

(Je suis sous python 2.5 sous Cygwin, btw).

Edit: Peut-être la vraie question est, dois-je utiliser telnetlib à tous pour ce, ou devrais-je utiliser le support de module?

OriginalL'auteur Ben | 2009-03-10