diff --git a/Attrap.py b/Attrap.py
index bde6027ca493e2c2cba86a721147677b30386306..f8c788cdda08ad4f02ccc915a669cb96ba8d8511 100644
--- a/Attrap.py
+++ b/Attrap.py
@@ -55,7 +55,7 @@ class Attrap:
             if not url == "":
                 self.url = url
             if date is not None:
-                self.date = date
+                self.date = Attrap.get_aware_datetime(date)
                 self.date_str = date.strftime("%d/%m/%Y")
             if not name == "":
                 self.name = name
@@ -75,15 +75,15 @@ class Attrap:
 
             if pdf_metadata:
                 if pdf_metadata.creation_date:
-                    self.pdf_creation_date = pdf_metadata.creation_date
+                    self.pdf_creation_date = Attrap.get_aware_datetime(pdf_metadata.creation_date)
                     if self.date is None:
-                        self.date = pdf_metadata.creation_date
+                        self.date = Attrap.get_aware_datetime(pdf_metadata.creation_date)
                         self.date_str = self.date.strftime("%d/%m/%Y")
 
                 if pdf_metadata.modification_date:
-                    self.pdf_modification_date = pdf_metadata.modification_date
+                    self.pdf_modification_date = Attrap.get_aware_datetime(pdf_metadata.modification_date)
                     if self.date is None:
-                        self.date = pdf_metadata.modification_date
+                        self.date = Attrap.get_aware_datetime(pdf_metadata.modification_date)
                         self.date_str = self.date.strftime("%d/%m/%Y")
 
         def extract_content(self, data_dir):
@@ -118,15 +118,15 @@ class Attrap:
             pdf_modification_date_json = None
 
             if self.pdf_creation_date:
-                pdf_creation_date_json = self.pdf_creation_date.strftime("%d/%m/%Y %H:%M:%S")
+                pdf_creation_date_json = self.pdf_creation_date.strftime("%d/%m/%Y %H:%M:%S%z")
             if self.pdf_modification_date:
-                pdf_modification_date_json = self.pdf_modification_date.strftime("%d/%m/%Y %H:%M:%S")
+                pdf_modification_date_json = self.pdf_modification_date.strftime("%d/%m/%Y %H:%M:%S%z")
 
             properties = {
                 'name': self.name,
                 'date': self.date_str,
                 'url': quote(self.url, safe='/:'),
-                'first_saw_on': datetime.datetime.today().strftime("%d/%m/%Y %H:%M:%S"),
+                'first_saw_on': datetime.datetime.now(datetime.timezone.utc).strftime("%d/%m/%Y %H:%M:%S%z"),
                 'pdf_creation_date': pdf_creation_date_json,
                 'pdf_modification_date': pdf_modification_date_json
             }
@@ -583,13 +583,13 @@ class Attrap:
         for raa in elements:
             # Si le fichier n'a pas déjà été parsé et qu'il est postérieur à la
             # date maximale d'analyse, on le télécharge et on le parse
-            if not os.path.isfile(f'{self.data_dir}/raa/{raa.get_sha256()}.txt') and (not raa.date or (raa.date >= self.not_before)):
+            if not os.path.isfile(f'{self.data_dir}/raa/{raa.get_sha256()}.txt') and (not raa.date or (raa.date >= Attrap.get_aware_datetime(self.not_before))):
                 url = quote(raa.url, safe='/:')
                 self.download_file(raa)
                 raa.parse_metadata(self.data_dir)
                 # Lorsque la date du RAA n'est pas connue, on a dû télécharger le PDF pour récupérer la date de ses métadonnées.
                 # Donc on vérifie à nouveau ici si la date correspond à ce qu'on veut analyser
-                if (raa.date and raa.date >= self.not_before):
+                if (raa.date and raa.date >= Attrap.get_aware_datetime(self.not_before)):
                     logger.info(f'Nouveau fichier : {raa.name} ({raa.date_str}). URL : {url}')
                     self.flatten_pdf(raa)
                     self.ocr(raa, True)
@@ -694,3 +694,15 @@ class Attrap:
         except Exception as exc:
             logger.warning(f'Impossible de deviner la date du terme {string} : {exc}')
             return datetime.datetime(9999, 1, 1)
+
+    def get_aware_datetime(unknown_datetime):
+        """
+        Retourne un objet datetime avisé.
+
+        datetime - L'objet datetime à aviser. Utilise le fuseau horaire du système si datetime est naïf.
+        """
+
+        if unknown_datetime.tzinfo is not None and unknown_datetime.tzinfo.utcoffset(unknown_datetime) is not None:
+            return unknown_datetime
+        else:
+            return unknown_datetime.replace(tzinfo=datetime.datetime.now(datetime.timezone.utc).astimezone().tzinfo)