我目前正在访问OldSchool RuneScape的API,它以JSON的形式返回字符串,但不适用于我。Python3 - JSON错误
我当前的代码:
import json
import urllib.request
name = input('OSRS name? ')
url = 'http://services.runescape.com/m=hiscore_oldschool/index_lite.ws?player={0}'.format(name)
open_url = urllib.request.urlopen(url)
read_url = open_url.read().decode()
format_to_string = str(read_url)
j = json.loads(format_to_string)
print(j)
但如果我尝试例如姓名itz_craft,我得到一个错误。
OSRS name? itz_craft
Traceback (most recent call last):
File "/home/pi/Programming/Python3/RuneScape/json_test.py", line 11, in <module>
j = json.loads(format_to_string)
File "/usr/lib/python3.4/json/__init__.py", line 318, in loads
return _default_decoder.decode(s)
File "/usr/lib/python3.4/json/decoder.py", line 346, in decode
raise ValueError(errmsg("Extra data", s, end, len(s)))
ValueError: Extra data: line 1 column 7 - line 28 column 1 (char 6 - 315)
我希望有人可以帮我解决这个问题,所以我能避免问题后使用JSON,因为我要利用这个这么多。
无论如何,谢谢!
你确定API正在返回JSON吗?我在浏览器中访问了该网址,该网页是text/html。有一个'format'参数可以指定'JSON'吗? – Monkpit