Bonjour,
Je suis plus ou moins novice en python. Je travaille sur un projet avec django et j'ai besoin d'envoyer un code par mail après une inscription.
Mais le server mail smtp me bloque complètement car je n'ai pas encore vraiment de connaissance sur le sujet or que c'est plus ou moins urgent à cause de la livraison de ce projet. C'est pourquoi je demande un renfort.
1) Avec ce code, j'ai un [WinError 10061] Aucune connexion n’a pu être établie car l’ordinateur cible l’a expressément refusée
2) Si je n'envoi pas de mail, je voudrais vérifier simplement si le mail existe
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 msg = MIMEText('This is the body of the message.') msg['To'] = email.utils.formataddr(('Recipient', 'ralim@gmail.com')) msg['From'] = email.utils.formataddr(('Author', 'ralim@gmail.com')) msg['Subject'] = 'Simple test message' server = smtplib.SMTP('127.0.0.1', 1025) server.set_debuglevel(True) # show communication with the server try: server.sendmail('ralim@gmail.com', ['ralim@gmail.com'], msg.as_string()) finally: server.quit()
Mai de nouveau avec ce code, j'ai un Timeout
Et je sais que c'est le serveur mail le problème mais je tâtonne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 addressToVerify = mail1 match = re.match('^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$', addressToVerify) if match == None: raise ValueError('Bad Syntax') return HttpResponseRedirect('inscription') records = dns.resolver.query('egd.ca', 'MX') mxRecord = records[0].exchange mxRecord = str(mxRecord) # Get local server hostname host = socket.gethostname() # SMTP lib setup (use debug level for full output) server = smtplib.SMTP() server.set_debuglevel(0) # SMTP Conversation server.connect(mxRecord) server.helo(host) server.mail('mail@example.com') code, message = server.rcpt(str(addressToVerify)) server.quit() # Assume 250 as Success if not code == 250: return HttpResponseRedirect('inscription')
Merci d'avance de votre aide.
Partager