从上面的json文件中我想得到“*”的值。我正在使用python并请求设置。通常,如果我在获取页面内容之前不需要获取页面ID,我可以这样做。但看到它不是我遇到了一些麻烦,需要一些帮助。
答案 0 :(得分:0)
该页面实际上不是json - 它是html中json的表示。要请求json,请删除网址末尾的“fm”。
在这段代码中,我将使用urllib2和json包将json加载到字典中,然后访问* item。
url = "http://creepypasta.wikia.com/api.php?%20action=query&prop=revisions&titles=Main_Page&rvprop=content&indexpageids=1&format=json"
j = json.load(urllib2.urlopen(url))
value = j['query']['pages']['22491']['revisions'][0]['*']
如果您不知道要查看的页码,请考虑找到的方法here(在下面复制):
def _finditem(obj, key):
if key in obj: return obj[key]
for k, v in obj.items():
if isinstance(v,dict):
item = _finditem(v, key)
if item is not None:
return item
_finditem(j,'revisions')[0]['*']