【问题标题】:JSONDecodeError("Expecting value", s, err.value) from NoneJSONDecodeError("期望值", s, err.value) 从无
【发布时间】:2021-02-23 18:19:58
【问题描述】:

我正在尝试从 pokeapi 获取一些信息,但在搜索某些 pokemon 的形式时我不断收到 JSONDecodeError。当我搜索charmander 时它可以工作,但是当我搜索pidgey 时它没有。 代码如下:

pokename = input('Digite o nome do Pokémon que você deseja consultar: ')

formas = requests.get(f'https://pokeapi.co/api/v2/pokemon-form/{pokename}/')
forms_data = formas.json()

这是错误:

Digite o nome do Pokémon que você deseja consultar: pidgey
Traceback (most recent call last):
File "c:/Users/perei/Evylla/DEV/python/pokemons.py", line 14, in <module>
status_data = status.json()
File "C:\Users\perei\AppData\Local\Programs\Python\Python38-32\lib\site-packages\requests\models.py", 
line 898, in json
return complexjson.loads(self.text, **kwargs)
File "C:\Users\perei\AppData\Local\Programs\Python\Python38-32\lib\json\__init__.py", line 357, in 
loads
return _default_decoder.decode(s)
File "C:\Users\perei\AppData\Local\Programs\Python\Python38-32\lib\json\decoder.py", line 337, in 
decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Users\perei\AppData\Local\Programs\Python\Python38-32\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)

【问题讨论】:

  • 您显然没有收到 JSON 响应 - 您是否尝试过打印响应或保存到文件(在徒劳地尝试解码为 JSON 之前)以便检查响应?
  • 我不只是尝试解码为 JSON,因为我认为它很漂亮,我还有其他请求与此完全一样。那是唯一给我一个错误的错误,我想了解原因,因为打开链接并将“pokename”替换为我想要的口袋妖怪的名称是有效的。不过我已经想通了,谢谢。
  • 响应不会解码为 JSON:您所要做的就是检查响应以找出原因。

标签: python json


【解决方案1】:

问题可能在于您的输入pokename。 api 可能会返回 404 格式错误的pokename

试试下面的代码。

import requests

#replace xx by bulbasaur and the code will print JSON.
k = requests.get('https://pokeapi.co/api/v2/pokemon-form/xx') 
if k.status_code == 200:
    print(k.json())
else:
    print("error",k.status_code)

【讨论】:

    猜你喜欢
    • 2017-12-28
    • 2021-03-05
    • 2021-09-29
    • 2019-08-06
    • 2019-09-18
    • 2022-06-11
    • 2017-05-11
    • 2020-04-19
    • 2020-09-04
    相关资源
    最近更新 更多