如何从TK103A gps跟踪器解码b'xx \ r \ x01 \ x03W \ x85pE \ x07 \ x177 \ x00 \ x06 \ xab \ xa4 \ r \ n'

问题描述 投票:1回答:1

我有3个tk103a设备。他们中的两个发送这样的信息:b'##,imei:359586015829802,A'-我可以使用它。但是其中一个发送b'xx \ r \ x01 \ x03W \ x85pE \ x07 \ x177 \ x00 \ x06 \ xab \ xa4 \ r \ n'而不是b'##,imei:359586015829802,A'。经典方法无济于事,例如带有('utf-8'或'ascii'或'cp866'...)的.decode()如何将其固定为正常值?


import socket

sock = socket.socket()
sock.bind(('192.168.1.164', 8051))
sock.listen()
conn, addr = sock.accept()

print 'connected:', addr

    while True:
    data = conn.recv(1024)
    if not data:
        break
    try:
        d = data.decode()
    except:
        raise

conn.close()

data.decode()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x85 in position 6: invalid start byte
python gps byte tracker
1个回答
0
投票

接收到的消息和预期的消息似乎完全无关,无法从一个转换为另一个。下面是它们的二进制表示。

x        x        \r       \x01     \x03     W        \x85     ...
01111000 01111000 00001101 00000001 00000011 01010111 10000101

#        #        ,        i        m        e        i        ...
00100011 00100011 00101100 01101001 01101101 01100101 01101001

该问题可能是由于其他原因,例如设备的配置。您可以尝试将设备重置为出厂设置,然后重试。另外,请确保您确实连接了此设备,但未连接任何其他设备。

© www.soinside.com 2019 - 2024. All rights reserved.