Как нормально декодировать ответ?
with closing(ssl.wrap_socket(socket.socket(family=socket.AF_INET, type=socket.SOCK_STREAM), **kwargs)) as s:
s.connect((urlParse.hostname, 443))
s.sendall("{metod} {path} HTTP/1.1\r\n"\
"Host: {hostname}\r\n"\
"Connection: close\r\n"\
"{headers}" \
"Content-Length: {len}\r\n"\
"\r\n".format(hostname=urlParse.hostname, len=len(params), path=path, metod=method, headers=headersStr).encode('utf8'))
if method == 'POST':
s.sendall(params)
data = ''
while True:
buff = s.recv(512)
if (len(buff) < 1):
break
#data += str(buff)[2:-1]
data += buff.decode('utf8')
С сокета читается JSON почему-то c таким куском:
“description”: "\xd0\x90\xd0\xbb\xd1\x8c\xd1\x84\xd0\xb0 \xd0\………. На этом запинается при декодировании. Если в ответе не будет этого (\xd0\x90\xd0\xbb\xd1\x8c\xd1), то всё будет норм. Так-то могу забрать и без декодирования:
но потом всё равно, чтобы скормить это json.loads, надо какой-то urlencoded применять.
Как это декодировать? Функцию штоль писать для расшифровки или как-то стандартными методами можно?