requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

爬虫常见报错:

requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

  • 某平台商品评论为例

requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)_第1张图片
requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)_第2张图片

报错原因:

这里是获取 response.json() 获取响应的json字典数据, 因为你请求返回的数据不是完整的json数据格式, 所以从而导致报错!

解决方法:

  1. 先打印 response.text 查看返回数据效果
    requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)_第3张图片
    当我打印 response.text , 返回不是完整的json数据, 反而多了一部分内容

这样的情况, 只需要删掉 链接 或者 请求参数 里面的 callback
requests.exceptions.JSONDecodeError: Expecting value: line 1 column 1 (char 0)_第4张图片
这样获取json数据就不会报错了~

备注:

  • json得不到数据, 先看text 是否有数据, 数据格式是什么样的, 数据是不是你要的
  • 要保证返回的数据是json数据格式, 你才能获取json
  • 你要有返回的数据内容, 如果被反爬了, 没有得到数据, 那就是解决反爬问题了

你可能感兴趣的:(Python,python,爬虫)