jermy08
2020-07-26 09:08
采纳率: 100%
浏览 818

Python爬虫获取到的HTML格式的信息如何转换成json格式

url = "https://data.variflight.com/analytics/CodeQuery"
data = {"key":"PEK","page":0}
res = requests.request("post",url,data=data)
res = res.content.decode("utf-8")
b =json.loads(res)
print(b)

爬取到的信息使用json.loads转换为json时出错,

File "C:\python\lib\json\decoder.py", line 337, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "C:\python\lib\json\decoder.py", line 355, in raw_decode
    raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2020-07-26 15:09
    已采纳

    json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
    看看你的编码,是不是不是utf8或者包含了不合法的字符(直接把xml当作json了)
    这个需要你解析html再将数据写入json,不能直接decode

    已采纳该答案
    1 打赏 评论
  • 浴火_凤凰 2021-04-25 16:30

    你先把返回信息打印一下看看 我这边测试 返回内容是错误 根本不是json字符串 转json肯定出错

     

    import requests
    url = "https://data.variflight.com/analytics/CodeQuery"
    data = {"key":"PEK","page":0}
    res = requests.request("post",url,data=data)
    print(res.text)
    b =json.loads(res)
    print(b)
    打赏 评论

相关推荐 更多相似问题