diff --git a/ppparis.py b/ppparis.py
index a67434ec37294fc6621e32d29b509999cfebd946..7bd1b2bb3899cc67b79cc3c808e3d116ea41f5f0 100755
--- a/ppparis.py
+++ b/ppparis.py
@@ -76,6 +76,19 @@ def parse_pdf(filename, name, date):
     if found:
       print_output('')
 
+def ocr(file,url,retry_on_failure=True):
+  cmd = ['ocrmypdf', '-l', 'eng+fra', '--output-type', 'pdfa', '--redo-ocr', '--skip-big', '500' , __DATA_DIR+filename, __DATA_DIR+filename]
+  logging.debug(f'Lancement de ocrmypdf: {cmd}')
+  try:
+    output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
+  except subprocess.CalledProcessError as exc:
+    if exc.returncode == 2 and retry_on_failure:
+      logging.warning('ATTENTION : Le fichier n\'est pas un PDF correct, nouvelle tentative de le télécharger')
+      download_file(url,file)
+      ocr(file,url,False)
+    elif not exc.returncode == 6:
+      logging.warning('ATTENTION : Impossible d\'OCRiser le document', exc.returncode, exc.output)
+
 # Début du script
 parser = argparse.ArgumentParser(prog='ppparis.py', description='Télécharge les RAA de la Préfecture de police de Paris et recherche des mots-clés')
 parser.add_argument('-n', '--no-headless', action='store_true', help='ne lance pas le navigateur en mode headless (pratique pour débugguer ou en dehors d\'une CI)')
@@ -158,12 +171,6 @@ for a in soup.find_all('a', href=True):
       logging.info(f'Nouveau fichier : {name} ({date}). URL : {url}')
       download_file(url, __DATA_DIR+filename)
 
-      cmd = ['ocrmypdf', '-l', 'eng+fra', '--output-type', 'pdfa', '--redo-ocr', '--skip-big', '500' , __DATA_DIR+filename, __DATA_DIR+filename]
-      logging.debug(f'Lancement de ocrmypdf: {cmd}')
-      try:
-        output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)
-      except subprocess.CalledProcessError as exc:
-        if not exc.returncode == 6:
-          logging.warning('ATTENTION : Impossible d\'OCRiser le document', exc.returncode, exc.output)
+      ocr(__DATA_DIR+filename,url,True)
 
       parse_pdf(filename, name, date)