Inloggegevens werken niet met Gmail SMTP

Ik probeer een e-mail te verzenden in Python, via Gmail. Hier is mijn code:

import smtplib
fromaddr = '......................'  
toaddrs  = '......................'  
msg = 'Spam email Test'  
username = '.......'  
password = '.......'
server = smtplib.SMTP('smtp.gmail.com', 587)  
server.ehlo()
server.starttls()
server.login(username, password)  
server.sendmail(fromaddr, toaddrs, msg)  
server.quit()

Ik krijg de foutmelding:

Traceback (most recent call last):
  File "email_send.py", line 18, in <module>
    server.login(username, password)
  File "C:\.....\Python\lib\smtplib.py", line 633
, in login
    raise SMTPAuthenticationError(code, resp)
smtplib.SMTPAuthenticationError: (535, b'5.7.8 Username and Password not accepte
d. Learn more at\n5.7.8 http://support.google.com/mail/bin/answer.py?answer=1425
7\n5.7.8 {BADCREDENTIALS} s10sm9426107qam.7 - gsmtp')

Dit lijkt een probleem te zijn met inloggen. Ik weet zeker dat mijn inloggegevens correct zijn, op één ding na. Moet de gebruikersnaam “[email protected]” zijn of gewoon “blah”? Ik heb beide geprobeerd, dezelfde fout.

Enig idee wat er mis is?

OPMERKING: alle punten zijn in plaats van wachtwoord/e-mail/bestandspaden/etc.


Antwoord 1, autoriteit 100%

Ik kwam een ​​soortgelijk probleem tegen en stuitte op deze vraag. Ik kreeg een SMTP-authenticatiefout, maar mijn gebruikersnaam/pas was correct. Hier is wat het heeft opgelost. Ik las dit:

https://support.google.com/accounts/answer/6010255

In een notendop, Google staat u niet toe om in te loggen via smtplib omdat het dit soort login als “minder veilig” heeft gemarkeerd, dus wat u moet doen is naar deze link gaan terwijl u bent ingelogd op uw Google-account en geef de toegang toe:

https://www.google.com/settings/security/lesssecureapps

Als dat eenmaal is ingesteld (zie mijn screenshot hieronder), zou het moeten werken.

Inloggen werkt nu:

smtpserver = smtplib.SMTP("smtp.gmail.com", 587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo()
smtpserver.login('[email protected]', 'me_pass')

Reactie na wijziging:

(235, '2.7.0 Accepted')

Reactie eerder:

smtplib.SMTPAuthenticationError: (535, '5.7.8 Username and Password not accepted. Learn more at\n5.7.8 http://support.google.com/mail/bin/answer.py?answer=14257 g66sm2224117qgf.37 - gsmtp')

Werkt nog steeds niet?Als je nog steeds de SMTPAuthenticationError krijgt, maar nu de code 534 is, komt dat omdat de locatie onbekend is. Volg deze link:

https://accounts.google.com/DisplayUnlockCaptcha

Klik op Doorgaan en dit zou u 10 minuten moeten geven om uw nieuwe app te registreren. Dus ga nu verder met een nieuwe inlogpoging en het zou moeten werken.

Dit lijkt niet meteen te werken. Het kan zijn dat u een tijdje vastzit en deze foutmelding krijgt in smptlib:

235 == 'Authentication successful'
503 == 'Error: already authenticated'

In het bericht staat dat je de browser moet gebruiken om in te loggen:

SMTPAuthenticationError: (534, '5.7.9 Please log in with your web browser and then try again. Learn more at\n5.7.9 https://support.google.com/mail/bin/answer.py?answer=78754 qo11sm4014232igb.17 - gsmtp')

Ga na het inschakelen van ‘lesssecureapps’ een kop koffie drinken, kom terug en probeer de link ‘DisplayUnlockCaptcha’ opnieuw. Uit gebruikerservaringen blijkt dat het tot een uur kan duren voordat de wijziging is doorgevoerd. Probeer vervolgens het aanmeldingsproces opnieuw.

UPDATE:: Zie mijn antwoord hier:
Een e-mail verzenden met Gmail als provider die Python gebruikt?


Antwoord 2, autoriteit 15%

Ik had hetzelfde probleem. De authenticatiefout kan te wijten zijn aan uw beveiligingsinstellingen, bijvoorbeeld de authenticatie in twee stappen. Het staat niet toe dat apps van derden de authenticatie overschrijven.

Log in op uw Google-account en gebruik deze links:

Stap 1 [Link om authenticatie in twee stappen uit te schakelen]:

https://myaccount.google.com/security?utm_source= OGB&utm_medium=act#signin

Stap 2: [Link voor het toestaan ​​van minder veilige apps]

https://myaccount.google.com/u/ 1/lesssecureapps?pli=1&pageId=none

Het zou nu allemaal goed moeten zijn.


Antwoord 3, autoriteit 8%

Als je smtp.gmail.comgebruikt, moet je het volgende doen:

  1. Schakel de minder veilige apps in

  2. Je ontvangt de beveiligingsmail in je Gmail-inbox. Klik daarin op ‘Ja, ik ben het’.

  3. Voer je code nu opnieuw uit.


Antwoord 4, autoriteit 4%

Ik had hetzelfde probleem. En ik repareer het door een app-wachtwoord te maken voor e-mailtoepassing op Mac.
Je kunt het vinden op mijn account -> Beveiliging -> Aanmelden bij Google -> App-wachtwoorden.
hieronder is de link ervoor.
https://myaccount.google.com/apppasswords?utm_source=google-account&amp ;utm_medium=web


Antwoord 5, autoriteit 3%

als u deze foutmelding krijgt (535, b’5.7.8 gebruikersnaam en wachtwoord niet geaccepteerd. Lees meer op\n5.7.8 https://support.google.com/mail/?p=BadCredentialso60sm2132303pje.21 – gsmtp’)

ga dan gewoon naar de instellingen van je Google-account van het gedeelte Beveiliging en maak een minder veilig account aan en zet de minder veilige knop aan


Antwoord 6, autoriteit 2%

Als u authenticatie in twee stappen inschakelt, moet u een speciaal app-wachtwoord genereren in plaats van uw algemene wachtwoord.
https://myaccount.google.com/security#signin


Antwoord 7

Ik had hetzelfde probleem, ik heb dit opgelost door “minder veilige app-toegang” toe te staan. Dit is te vinden op het tabblad Beveiliging van Google-account:


Antwoord 8

In mijn geval stond ik de toegang toe, maar het probleem was dat ik server.login('Name <email>', password)gebruikte. Zorg ervoor dat u hier alleen uw e-mailadres gebruikt: server.login('[email protected]', password).

Reactie na wijziging:

(235, '2.7.0 Accepted')

Reactie eerder:

smtplib.SMTPAuthenticationError: (535, b'5.7.8 Username and Password not accepted. Learn more at\n5.7.8  https://support.google.com/mail/?p=BadCredentials 130sm13119106qkh.99 - gsmtp')

Antwoord 9

Probeer minder veilige apps in te schakelen en zorg ervoor dat je smtp.gmail.com hebt of voor andere zoekopdrachten

Other episodes