Lỗi 'socket.gaierror: [Errno 11003] getaddrinfo failed'

import smtplib


fromaddr = 'mail nguoi gui'
toaddrs = 'mail nguoi nhan'
msg = 'khong co gi de hien thi'
 

username = 'mail nguoi gui'
password = 'mat khau'
 

server = smtplib.SMTP('mail nguoi gui', 578)
server.ehlo()
server.starttls()
server.ehlo()
server.login(username,password)
server.sendmail(fromaddr, toaddrs, msg)
server.quit()

đoạn code em xem trong một ví dụ, sau khi nhập đầy đủ mail người nhận, người gửi và mật khẩu thì nó ra lỗi thế này

Đặc biệt là dòng cuối “socket.gaierror: [Errno 11003] getaddrinfo failed”

Bật cái này lên
https://myaccount.google.com/intro/security

1 Like

e bật cái chỗ ‘Cho phép ứng dụng kém an toàn’ lên rồi mà nó vẫn bị lỗi như thế

Ban vô mail xem coi nó có gửi cho bạn cái mail nào thông báo rằng đang có người truy cập vào tài khoản của bạn không.

1 Like

mình không thấy thông báo bạn ơi

lâu rồi mình cũng không biết nằm chỗ nào.
Vấn đề ở đây chỉ là bạn chưa cho phép đăng nhập vào thôi.

1 Like

Bạn kéo xuống dưới này bật cái này lên xem

1 Like

lúc nảy mình bậc nó rồi

@Chi_Vien_Nguyen Đừng bật những thứ liên quan đến security mà bạn không hiểu rõ. Việc Google cấm bạn gửi mail thẳng qua SMTP bằng username & password là có lý do của họ.

Để gửi mail SMTP, bạn có thể dùng các service như Mailgun hoặc Mandrill.

1 Like

Hình như chỗ này phải là

server = smtplib.SMTP('smtp.gmail.com', 587)

Mới đúng chứ

1 Like

ờ, mình nhầm, cảm ơn bạn

cảm ơn bạn, mình chỉ cố gắng làm ví dụ thử nghiệm xem nó ntn thôi chứ cũng chưa có ý định gửi mail bằng python

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?