Here is my code:
import smtplib connection = smtplib.SMTP("smtp.gmail.com") connection.starttls() connection.login(user="mymail@gmail.com", password="mypassowrd") connection.sendmail(from_addr="mymail@gmail.com", to_addrs="recievermail@gmail.com", msg="Hello") connection.close()
So I am getting this error:
Traceback (most recent call last): File "E:100Days-Python_programsDay32Birthday Wisher (Day 32) startmain.py", line 3, in <module> connection = smtplib.SMTP("smtp.gmail.com") File "C:UsersHPAppDataLocalProgramsPythonPython39libsmtplib.py", line 253, in __init__ (code, msg) = self.connect(host, port) File "C:UsersHPAppDataLocalProgramsPythonPython39libsmtplib.py", line 339, in connect self.sock = self._get_socket(host, port, self.timeout) File "C:UsersHPAppDataLocalProgramsPythonPython39libsmtplib.py", line 310, in _get_socket return socket.create_connection((host, port), timeout, File "C:UsersHPAppDataLocalProgramsPythonPython39libsocket.py", line 843, in create_connection raise err File "C:UsersHPAppDataLocalProgramsPythonPython39libsocket.py", line 831, in create_connection sock.connect(sa) TimeoutError: [WinError 10060] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond Process finished with exit code 1
I turned on Less secure app access:
I turned off every security steps too:
And I also turned off the firewall protection as well.
But Nothing worked.
So please someone help me.
Advertisement
Answer
You need to specify the port. In this case, it’s 587
for TSL
.
Somehow it works, but I don’t have profound knowledge to explain why.
I had the same problem, so there is a solution:
connection = smtplib.SMTP("smtp.gmail.com", 587)