Encode output when necessary. Fixes #30
This commit is contained in:
parent
a4b8a74641
commit
e9405e370e
|
@ -463,8 +463,14 @@ def speedtest():
|
||||||
line = ('%(id)4s) %(sponsor)s (%(name)s, %(country)s) '
|
line = ('%(id)4s) %(sponsor)s (%(name)s, %(country)s) '
|
||||||
'[%(d)0.2f km]' % server)
|
'[%(d)0.2f km]' % server)
|
||||||
serverList.append(line)
|
serverList.append(line)
|
||||||
|
# Python 2.7 and newer seem to be ok with the resultant encoding
|
||||||
|
# from parsing the XML, but older versions have some issues.
|
||||||
|
# This block should detect whether we need to encode or not
|
||||||
try:
|
try:
|
||||||
|
unicode()
|
||||||
print_('\n'.join(serverList).encode('utf-8', 'ignore'))
|
print_('\n'.join(serverList).encode('utf-8', 'ignore'))
|
||||||
|
except NameError:
|
||||||
|
print_('\n'.join(serverList))
|
||||||
except IOError:
|
except IOError:
|
||||||
pass
|
pass
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
@ -518,8 +524,16 @@ def speedtest():
|
||||||
best = getBestServer(servers)
|
best = getBestServer(servers)
|
||||||
|
|
||||||
if not args.simple:
|
if not args.simple:
|
||||||
print_('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: '
|
# Python 2.7 and newer seem to be ok with the resultant encoding
|
||||||
'%(latency)s ms' % best)
|
# from parsing the XML, but older versions have some issues.
|
||||||
|
# This block should detect whether we need to encode or not
|
||||||
|
try:
|
||||||
|
unicode()
|
||||||
|
print_(('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: '
|
||||||
|
'%(latency)s ms' % best).encode('utf-8', 'ignore'))
|
||||||
|
except NameError:
|
||||||
|
print_('Hosted by %(sponsor)s (%(name)s) [%(d)0.2f km]: '
|
||||||
|
'%(latency)s ms' % best)
|
||||||
else:
|
else:
|
||||||
print_('Ping: %(latency)s ms' % best)
|
print_('Ping: %(latency)s ms' % best)
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue