Some HAT... |
| = Анабар.ru => Python-форумы => Язык программирования Python => сообщение 752 |
| | Вход | Регистрация | |
нет
фото
Автор: ldots Дата: 26-Dec-2005 12:03 (gmt = -3.0) ВАРИАНТ
Вот, вроде так можно, может кому пригодится: Например, обрабатываем вывод cdparanoia (часть кода из класса): ....
1 self.pid, self.fd=pty.fork() 2 if self.pid<0: 3 print "fork() error" 4 if self.pid==0: 5 os.execl("/usr/bin/cdparanoia","cdparanoia","-B","")далее:1 def read_output(self): 2 buf="" 3 t=time.time() 4 while time.time()-t<0.1: 5 if select.select([self.fd],[],[],0.02)[0]: 6 try: 7 buf+=os.read(self.fd,1) 8 except OSError: 9 print "Error!" 10 return Falseпосле чего обрабатываем buf как хотим ф-ию read_output() запускаем по таймеру. Взято из chestnut-dialer Константина Корикова (по его же наводке, за что ему спасибо), файл connection.py Правда тут возникла еще одна проблемка... опишу позже - времени нет. Вооот.
все сообщения ветви:
- 735 Как обработать вывод программы? ldots | 8-Dec-2005, 08:48 | просмотров: 4101
- 752 ВАРИАНТ ldots | 26-Dec-2005, 12:03 | просмотров: 4237 ⇐ ◄
- 736 Как обработать вывод программы? ldots | 8-Dec-2005, 20:09 | просмотров: 4050
- 740 Как обработать вывод программы? ldots | 10-Dec-2005, 14:32 | просмотров: 4078
- 747 А если readline() попробовать? Ну, или read(1), например. [-] Anabar | 16-Dec-2005, 02:47 | просмотров: 4071
- 749 асинхронное чтение файла? ldots | 16-Dec-2005, 15:09 | просмотров: 4146
- 748 Ща попробую... [-] ldots | 16-Dec-2005, 13:41 | просмотров: 3960
- 746 Неужели ни у кого нет мыслей? ldots | 15-Dec-2005, 10:06 | просмотров: 3983
О том как (правильно) написать сообщение...
Написать ответ
Время генерации страницы в секундах: 0.065