Commit 6c07cad1 authored by Nicolas Joyard's avatar Nicolas Joyard

Ajout gestion suivi invalide

parent 19c4a544
...@@ -9,6 +9,10 @@ from ..models import Action, Parlementaire, db ...@@ -9,6 +9,10 @@ from ..models import Action, Parlementaire, db
from ..models.constants import ETAPE_ENVOYE from ..models.constants import ETAPE_ENVOYE
class SuiviInvalide(Exception):
pass
class LaPosteImporter(BaseImporter): class LaPosteImporter(BaseImporter):
URL = 'http://www.part.csuivi.courrier.laposte.fr/suivi/index?id={}' URL = 'http://www.part.csuivi.courrier.laposte.fr/suivi/index?id={}'
...@@ -35,8 +39,11 @@ class LaPosteImporter(BaseImporter): ...@@ -35,8 +39,11 @@ class LaPosteImporter(BaseImporter):
return None return None
ident = ident[0] ident = ident[0]
if ident.text.strip().startswith('Aucun '): idtxt = ident.text.strip()
if idtxt.startswith('Aucun '):
return None return None
elif idtxt.startswith('L\'identifiant saisi'):
raise SuiviInvalide()
produit = self._next_el_sibling(ident) produit = self._next_el_sibling(ident)
date = self._next_el_sibling(produit) date = self._next_el_sibling(produit)
...@@ -50,8 +57,12 @@ class LaPosteImporter(BaseImporter): ...@@ -50,8 +57,12 @@ class LaPosteImporter(BaseImporter):
def import_suivi(self, suivi): def import_suivi(self, suivi):
if suivi not in self.cache: if suivi not in self.cache:
statut = self._import_suivi(suivi) try:
self.info('SUIVI %s => %s' % (suivi, statut)) statut = self._import_suivi(suivi)
self.info('SUIVI %s => %s' % (suivi, statut))
except SuiviInvalide:
self.error('INVALIDE %s' % suivi)
statut = 'Suivi invalide !'
self.cache[suivi] = statut self.cache[suivi] = statut
return self.cache[suivi] return self.cache[suivi]
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment