MRAB wrote:
Python Newsgroup wrote:
Gotcha, I got started from the telnet example listed in the docs. The
linux install was via yum and installed 2.x instead. That explains it.
Althought print (tn.read_all () ) runs in 2.x on linux.
I have another problem maybe you cna help me with. My telnet output
jibberish in windows: I cna parse some of the output for results but
is there anyway to get rid of the jibberish. (looks like hex but I'm
not sure)
I can only use this tn.read_until(b'whatever string') Is this whats
causing the output? the b switch. seems like I don't need it in linux.
is that binary?
Thanks
C:\Python30>python \Python30\scripts\telnet-tftp1.py
b'\x1b[24;1H\x1b[24;31H\x1b[24;1H\x1b[?25h\x1b[24;31H\x1b[24;31Hy\x1b[24;31H\x1b
[?25h\x1b[24;32H\x1b[24;0H\x1bE\x1b[24;1H\x1b[24;32H\x1b[24;1H\x1b[2K\x1b[24;1H\
x1b[?25h\x1b[24;1H\x1b[1;24r\x1b[24;1H\x1b[2J\x1b[?7l\x1b[1;24r\x1b[?6l\x1b[24;1
H\x1b[?25h\x1b[24;1H\x1b[?6l\x1b[1;0r\x1b[?7l\x1b[2J\x1b[24;1H\x1b[1;1H\x1b[2K\x
1b[24;1H\n\r'
C:\Python30>
They look like control sequences for a terminal.
Indeed. \x1b == \033 == 27 == ESCAPE. 'ESC [' is the standard prefix
for ANSI terminal control sequences.
http://en.wikipedia.org/wiki/ANSI_escape_code
"32-bit character-mode (subsystem:console) Windows applications don't
write ANSI escape sequences to the console. They must interpret the
escape code actions and call the native Console API instead to
accomplish the proper result. If you do write the sequences directly,
all you'll get is the text of the sequence on the screen, not the action
intended."
I mostly see a crazy mixture of ESC [ row , col H cursor position
commands. For you app, parse out and ignore the codes not skipped by
.read_until calls.
Terry Jan Reedy
--
http://mail.python.org/mailman/listinfo/python-list