Python:拆分文本/xml;字符集=UTF-8

Python:拆分文本/xml;字符集=UTF-8,python,html,dictionary,utf-8,Python,Html,Dictionary,Utf 8,我向api发出了一个请求,它返回了 b"001-1001\thazraja\t122.9668944300\t43.1858693000\t[YES]\t1456529273000\t2437.0000000000\n001-1002\tZ8s14\t122.9671153000\t43.1860681800\t[NO]\t1456529275000\t2462.0000000000\n..." 这种情况持续了一段时间,在回车处再次开始“\n”。在重新开始之前,它总是有7个项目 print(r

我向api发出了一个请求,它返回了

b"001-1001\thazraja\t122.9668944300\t43.1858693000\t[YES]\t1456529273000\t2437.0000000000\n001-1002\tZ8s14\t122.9671153000\t43.1860681800\t[NO]\t1456529275000\t2462.0000000000\n..."
这种情况持续了一段时间,在回车处再次开始“\n”。在重新开始之前,它总是有7个项目

print(response.headers[“content type”])
returns

text/xml;字符集=UTF-8

如何访问“001-1001”和“thajraza”等?我不确定api返回的类型的名称是什么?这是一张单子吗?字典?还有别的吗?

哦,我明白了。。。有


我可以在标签和回车处拆分。我在找一个解释。有时候,当你不知道合适的术语时,你很难找到东西

为什么要解析字典?这是什么意思?还有,你所说的“这种类型的返回”到底指的是什么?@UlrichEckhardt我不明白api返回了什么。我看到它是由“b”表示的字节,我看到了制表符和回车,我只是在寻找访问“001-1001”以及“thazraja”的内容,等等。更新了问题。啊。两件事:它声称是XML(
text/XML
),这似乎是个谎言。相反,这看起来像是一系列由制表符分隔的字符串。现在,要将“原始”字节转换为字符串,请使用
decode()
方法。这声称是UTF-8(
charset=UTF-8
),但这也可能是错误的,但只有当字符位于ASCII之外时才会显示。使用该字符串,按照您在下面找到的答案和/或CSV模块进行操作。您似乎拥有CSV数据(只是它以制表符分隔,而不是逗号分隔,这并不重要)。尝试使用
csv
模块进行此操作。
>>> a = b'asdf\nasdf'
>>> a.split(b'\n')
[b'asdf', b'asdf']