diff --git a/eve_api/tasks/alliance.py b/eve_api/tasks/alliance.py index e7f833b..ba19b98 100644 --- a/eve_api/tasks/alliance.py +++ b/eve_api/tasks/alliance.py @@ -36,7 +36,6 @@ def import_alliance_details(): for corp in alliance['memberCorporations']: if int(corp['corporationID']) not in corplist: import_corp_details.delay(corp['corporationID']) - pass validcorps.append(int(corp['corporationID'])) delcorps = set(corplist) - set(validcorps) diff --git a/eve_api/tasks/corporation.py b/eve_api/tasks/corporation.py index 437a163..1da351b 100644 --- a/eve_api/tasks/corporation.py +++ b/eve_api/tasks/corporation.py @@ -4,6 +4,7 @@ from xml.dom import minidom from celery.decorators import task from eve_proxy.models import CachedDocument +from eve_proxy.exceptions imort DocumentRetrievalError from eve_api.models import EVEPlayerCorporation, EVEPlayerCharacter, EVEPlayerAlliance from eve_api.utils import basic_xml_parse_doc from eve_api.tasks.character import import_eve_character @@ -43,7 +44,12 @@ def import_corp_details_func(corp_id, log=logging.getLogger(__name__)): corpobj, created = EVEPlayerCorporation.objects.get_or_create(id=corp_id) if created or not corpobj.api_last_updated or corpobj.api_last_updated < (datetime.utcnow() - timedelta(hours=12)): - doc = CachedDocument.objects.api_query('/corp/CorporationSheet.xml.aspx', {'corporationID': corp_id}) + try: + doc = CachedDocument.objects.api_query('/corp/CorporationSheet.xml.aspx', {'corporationID': corp_id}) + except DocumentRetrievalError, exc: + logger.error('Error retrieving CorporationSheet.xml.aspx for ID %s - %s' % (corp_id, exc)) + raise APIAccessException + d = basic_xml_parse_doc(doc)['eveapi'] if 'error' in d: