Tôi gặp phải một vấn đề tương tự và vấp phải câu hỏi này. Tôi đã gặp Lỗi Xác thực SMTP nhưng tên người dùng / thẻ của tôi là chính xác. Đây là những gì đã sửa nó. Tôi đọc cái này:
https://support.google.com/accountsals/6010255
Tóm lại, google không cho phép bạn đăng nhập thông qua smtplib vì nó đã gắn cờ loại đăng nhập này là "kém an toàn", vì vậy, những gì bạn phải làm là truy cập liên kết này trong khi bạn đăng nhập vào tài khoản google của mình, và cho phép truy cập:
https://www.google.com.vn/sinstall/security/lesssecur xuất hiện lại
Khi đã được đặt (xem ảnh chụp màn hình của tôi bên dưới), nó sẽ hoạt động.
Đăng nhập ngay bây giờ hoạt động:
smtpserver = smtplib.SMTP("smtp.gmail.com", 587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo()
smtpserver.login('me@gmail.com', 'me_pass')
Phản hồi sau khi thay đổi:
(235, '2.7.0 Accepted')
Trả lời trước:
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')
Vẫn không làm việc? Nếu bạn vẫn nhận được SMTPAuthenticationError nhưng bây giờ mã là 534, vì đó là vị trí không xác định. Theo liên kết này:
https://accounts.google.com/DisplayUnlockCaptcha
Nhấp vào tiếp tục và điều này sẽ cung cấp cho bạn 10 phút để đăng ký ứng dụng mới của bạn. Vì vậy, tiến hành thực hiện một nỗ lực đăng nhập khác bây giờ và nó sẽ hoạt động.
CẬP NHẬT : Điều này dường như không hoạt động ngay lập tức, bạn có thể bị kẹt trong một thời gian nhận được lỗi này trong smptlib:
235 == 'Authentication successful'
503 == 'Error: already authenticated'
Thông báo cho biết sử dụng trình duyệt để đăng nhập:
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')
Sau khi bật 'lesssecurures', hãy đi uống cà phê, quay lại và thử lại liên kết 'DisplayUnlockCaptcha'. Từ trải nghiệm người dùng, có thể mất tới một giờ để thay đổi bắt đầu. Sau đó thử lại quy trình đăng nhập.