Script python notification mail outlook

Bonjour,

Depuis quelque temps mon code python ne s'ouvre plus pour une notification de mail Outlook. Anomalie de connexion est le message d'erreur.

import imaplib

# Configuration
server = "outlook.office365.com"
user = 
password = 

# Connexion au serveur
try:
    mail = imaplib.IMAP4_SSL(server)
    mail.login(user, password)
    mail.select("Inbox")
except:
    print('Anomalie de connexion',server)
else:
  (retcode, messages) = mail.search(None, '(UNSEEN)')
  if retcode == 'OK':
     nonlus = len(messages[0].split())
  else:
     nonlus = "?"

  (retcode, messages) = mail.search(None, '(SEEN)')
  if retcode == 'OK':
     lus = len(messages[0].split())
  else:
    lus = "?"

  print(user, "messages (non lus/lus) :", nonlus, "/", lus)
input()


“Impose ta chance, serre ton bonheur et va vers ton risque. À te regarder, ils s’habitueront.”  René Char 

1 réponse

  1. Modérateur

    Bonjour,

    Normalement il doit y avoir plusieurs mois que cela ne fonctionne plus. Pour accéder à Outlook depuis une application tiers, il faut utiliser une nouvelle procédure d'identification avec client_id, le user/mdp ne suffit plus. Et après Outlook, c'est aussi arrivé sur Gmail.

    J'avais un script python pour relever les compteurs d'une dizaine d'emails sur différents sites, et donc Outlook et Gmail ne sont plus opérationnels.

    J'avais rapidement regardé cela, sans aller jusqu'au bout : https://www.tempmail.us.com/fr/python-msal/acces-a-la-messagerie-outlook-python-3-x-via-imap


    1. Bonjour, 

      Oui il faut la double authentification pour Outlook maintenant. Je regarderai le script de ton lien. Merci. 

    2. Contributeur
      @quentin2121

      bonjour,

      Il ne s'agit pas ici d'authentification à double facteur, plutôt d'authentification avec un secret différent du mot de passe utilisé habituellement par le client.

    3. Modérateur
      @yg_be

      Oui il semble que depuis son compte Outlook ou Gmail il faut créer un id et qu'il faut à la connexion depuis une application tiers donner ce nouvel identifiant, en plus du compte et mot de passe.

    4. @jee pee

      C'est facile à créer depuis son compte Outlook cet ID ? Et comme le rajouter à son script python ?

    5. Contributeur
      @jee pee

      Je pense que c'est un secret que l'application utilise à la place du mot de passe habituel du compte.