请求 returns 字节,但我无法解码它们
Request returns bytes and I'm failing to decode them
基本上我向一个网站发出了一个请求并得到了一个字节响应:b'[{"geonameId:"703448"}..........'.
我很困惑,因为虽然它是字节类型,但它非常易于阅读并且看起来像 json。我确实知道响应是从 运行ning r.encoding
以 latin1 编码的,它返回 ISO-859-1
并且我试图对其进行解码,但它只是 returns 一个空字符串。这是我目前所拥有的:
r = response.content
string = r.decode("ISO-8859-1")
print (string)
这是打印空白行的地方。
然而当我 运行
len(string)
我得到:回来31023
如何在不返回空字符串的情况下解码这些字节?
您是否尝试使用 json
模块解析它?
import json
parsed = json.loads(response.content)
另一种解决方案是使用response.text,其中returnsunicode
中的内容
Type: property
String form: <property object at 0x7f76f8c79db8>
Docstring:
Content of the response, in unicode.
If Response.encoding is None, encoding will be guessed using
``chardet``.
The encoding of the response content is determined based solely on HTTP
headers, following RFC 2616 to the letter. If you can take advantage of
non-HTTP knowledge to make a better guess at the encoding, you should
set ``r.encoding`` appropriately before accessing this property.
有r.text
和r.content
。第一个是字符串,第二个是字节。
你想要
import json
data = json.loads(r.text)
基本上我向一个网站发出了一个请求并得到了一个字节响应:b'[{"geonameId:"703448"}..........'.
我很困惑,因为虽然它是字节类型,但它非常易于阅读并且看起来像 json。我确实知道响应是从 运行ning r.encoding
以 latin1 编码的,它返回 ISO-859-1
并且我试图对其进行解码,但它只是 returns 一个空字符串。这是我目前所拥有的:
r = response.content
string = r.decode("ISO-8859-1")
print (string)
这是打印空白行的地方。 然而当我 运行
len(string)
我得到:回来31023
如何在不返回空字符串的情况下解码这些字节?
您是否尝试使用 json
模块解析它?
import json
parsed = json.loads(response.content)
另一种解决方案是使用response.text,其中returnsunicode
中的内容Type: property
String form: <property object at 0x7f76f8c79db8>
Docstring:
Content of the response, in unicode.
If Response.encoding is None, encoding will be guessed using
``chardet``.
The encoding of the response content is determined based solely on HTTP
headers, following RFC 2616 to the letter. If you can take advantage of
non-HTTP knowledge to make a better guess at the encoding, you should
set ``r.encoding`` appropriately before accessing this property.
有r.text
和r.content
。第一个是字符串,第二个是字节。
你想要
import json
data = json.loads(r.text)