我目前正在訪問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