Python 查询Wikidata时JSON解码错误
我试图解码从wikidata获得的json数据时遇到解码错误。我读过它可能是因为我试图解码字节而不是UTF-8,但我试图解码成UTF-8,我似乎找不到这样做的方法。。。这是我的方法代码(参数是字符串,返回布尔值):Python 查询Wikidata时JSON解码错误,python,encoding,wikidata,Python,Encoding,Wikidata,我试图解码从wikidata获得的json数据时遇到解码错误。我读过它可能是因为我试图解码字节而不是UTF-8,但我试图解码成UTF-8,我似乎找不到这样做的方法。。。这是我的方法代码(参数是字符串,返回布尔值): 您收到了什么错误消息?我收到了这个异常:JSONDecodeError:期望值:第1行第1列(字符0)请给出一个API返回的示例,以打印r的值,它可能不是json,并且https://query.wikidata.org/w/api.php我现在使用的url似乎不正确。当我打印r.t
您收到了什么错误消息?我收到了这个异常:JSONDecodeError:期望值:第1行第1列(字符0)请给出一个API返回的示例,以打印
r
的值,它可能不是json,并且https://query.wikidata.org/w/api.php
我现在使用的url似乎不正确。当我打印r.text时,它会给我一个标题为“Wikimedia错误”的html。
def es_enfermedad(candidato):
url = 'https://query.wikidata.org/sparql'
query = """
SELECT ?item WHERE {
?item rdfs:label ?nombre.
?item wdt:P31 ?tipo.
VALUES ?tipo {wd:Q12135}
FILTER(LCASE(?nombre) = "%s"@en)
}
""" % (candidato)
r = requests.get(url, params = {'format': 'json', 'query': query})
data = r.json()
return len(data['results']['bindings']) > 0