# HG changeset patch # User nowmad@23.1.168.192.in-addr.arpa # Date 1449081264 -3600 # Node ID bc05d9adeef8ec6b1571e6ba0dcf618ce870cbe4 # Parent 5dfc5b6c2e00bfc1068e8aca8a70ea131377bfb0 fix error when accessing to json keys (and remove unused import) diff -r 5dfc5b6c2e00 -r bc05d9adeef8 server/ammicosrv/ammico/extractors.py --- a/server/ammicosrv/ammico/extractors.py Wed Dec 02 19:33:41 2015 +0100 +++ b/server/ammicosrv/ammico/extractors.py Wed Dec 02 19:34:24 2015 +0100 @@ -4,7 +4,7 @@ import requests import xmltodict -from ammicosrv.ammico.utils import fetchJson, MyHTMLParser +from ammicosrv.ammico.utils import fetchJson def extractFromMIMO(slide): @@ -21,7 +21,7 @@ details.setdefault('images', []).append(i['images'][0]['value']) details['title'] = details.pop('name') elif ('response' in results): - for result in results.response[0].collect: + for result in results['response'][0]['collect']: for key in result.keys(): details[key.replace("_stop", "")] = result[key] return details @@ -39,35 +39,35 @@ """ def extractFromOrpheo(slide): details = {} - params = {'id': slide.id_stop.replace('stop-', '')} + params = {'id': slide.id_stop.replace('stop-', '')} data = requests.get(slide.book.exposition.url_orpheo, params=params) parsed_data = xmltodict.parse(data.content.decode('utf-8')) - + if ('item' in parsed_data['result']): details = { 'title': parsed_data['result']['item']['title'], 'id_inventory': parsed_data['result']['item']['Numero_inventaire'], } parser = MyHTMLParser() - + if (parsed_data['result']['item']['Description']): parser.feed(parsed_data['result']['item']['Description']) details['description']= parser.description - + if (parsed_data['result']['item']['Audio']): parser.feed(parsed_data['result']['item']['Audio']) details['images']= parser.images details['audio']= parser.audio details['captions']= parser.captions - + if (parsed_data['result']['item']['Video']): parser.feed(parsed_data['result']['item']['Video']) details['video']= parser.video details['images']= parser.images - + #if (parsed_data['result']['item']['Image']): # parser.feed(parsed_data['result']['item']['Image']) # details['image']= parser.caption - + return details """