【问题标题】:Python - Splitting the response of a non-json requestPython - 拆分非 json 请求的响应
【发布时间】:2020-07-09 19:14:53
【问题描述】:

基本上,我正在使用 API 并向其发送请求。 响应不是 json 格式的,所以我无法正确读取它。

响应是“简单的”:

RANDO:284420457:79065331589

我尝试过的是r.text(),但无法使其仍然有效。基本上,我希望将信息按: 拆分,并将它们中的每一个都放入一个不同的变量中。

    r = requests.get(url=URL, verify=False)
    data = r.text()

    data = data.split(":")
    var0 = data[0]
    var1 = data[1]
    var2 = data[2]

var0 将是 RANDO 变量1284420457 var2 79065331589

r.text() 出错:Command raised an exception: TypeError: 'str' object is not callable

【问题讨论】:

  • 抱歉,只是想澄清一下。您遇到问题的r.text()?这就是你的错误?你能粘贴你做r.text()时得到的错误吗@
  • 命令引发异常:TypeError: 'str' object is not callable
  • 应该是r.text 而不是r.text()

标签: python python-3.x api split python-requests


【解决方案1】:

可能是这样的(注意它是r.text 而不是r.text()):

r = requests.get(url=URL, verify=False)
data = r.text

vars = {'var'+str(i): value for i, value in enumerate(data.split(":"))}
print(vars)

输出:

{'var0': 'RANDO', 'var1': '284420457', 'var2': '79065331589'}

【讨论】:

  • 仍然遇到与我相同的错误:Command raised an exception: TypeError: 'str' object is not callable
  • 你能澄清代码的哪一部分给出了这个错误吗?
  • 我的错,是用 ​​text() 代替 text
  • 如果您满意,请采纳答案,谢谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-23
  • 2019-07-18
  • 1970-01-01
  • 2011-10-31
  • 2011-02-18
  • 2018-11-03
相关资源
最近更新 更多