Problème script smtplib

erkawan Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
quent217 Messages postés 420 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Niveau débutant en Python
OS Windows 10 / version python 3.7


Je ne parviens pas à faire tourner un script d'envoi Email qui fonctionnait pourtant avant sur mon ancienne session ubuntu..

import smtplib
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText

Email="***@gmail.com"
 
fromaddr = "***"
toaddr = Email
msg = MIMEMultipart()
msg['From'] = fromaddr
msg['To'] = toaddr
msg['Subject'] = "SUJET DU MAIL"
 
body = "CORPS DE MAIL"
msg.attach(MIMEText(body, 'plain'))
 
server = smtplib.SMTP('smtp.gmail.com', 587)
server.starttls()
server.login(fromaddr, "***")
text = msg.as_string()
server.sendmail(fromaddr, toaddr, text)
server.quit()


Message d'erreur ci-dessous:

File "test2.py3", line 5, in <module>
import smtplib
File "C:\Users\Ron\AppData\Local\Programs\Python37\lib\smtplib.py", line 47, in <module>
import email.utils
File "C:\Users\Ron\Python\email.py", line 2, in <module>
from email.MIMEMultipart import MIMEMultipart
ModuleNotFoundError: No module named 'email.MIMEMultipart'; 'email' is not a package

Je n'ai pas réussi à installer la librairire : "pip install smtplib"

Pouvez-vous svp m'aider ?

Merci d'avance,
A voir également:

3 réponses

quent217 Messages postés 420 Date d'inscription   Statut Membre Dernière intervention   347
 
Bonjour,
from email.MIMEMultipart import MIMEMultipart
from email.MIMEText import MIMEText

doit être utilisés avec Python 2.
D'après la documentation, vous devez faire comme ceci avec Python 3 :
from email.mime.multipart import MIMEMultipart
from email.mime.text import MIMEText
0
erkawan Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour quent217, merci pour votre retour.

J'ai modifié la structure mais le problème persiste:
File "test2.py3", line 5, in <module>
import smtplib
File "C:\Users\Ron\AppData\Local\Programs\Python37\lib\smtplib.py", line 47, in <module>
import email.utils
File "C:\Users\Ron\Python\email.py", line 2, in <module>
from email.MIMEMultipart import MIMEMultipart
ModuleNotFoundError: No module named 'email.MIMEMultipart'; 'email' is not a package
0
quent217 Messages postés 420 Date d'inscription   Statut Membre Dernière intervention   347
 
L'erreur est assez étrange...
Comment s'appelle le fichier que vous utilisez et dans quel dossier est-il ?
Si il s'appelle bien test2.py3, regardez le fichier email.py qui se trouve dans le dossier C:\Users\Ron\Python. Je pense que c'est un fichier que vous avez créé vous-même. Si c'est bien le cas, essayez de le renommer autrement pour voir si l'erreur disparait.
0