import imaplib
import email
import socket
socket.getaddrinfo('127.0.0.1', 8080)
def read_email_from_gmail():
try:
mail = imaplib.IMAP4_SSL('imap.gmail.com', 993)
mail.login('your email', 'your password')
mail.select('inbox')
type, data = mail.search(None, 'ALL')
mail_ids = data[0]
id_list = mail_ids.split()
typ, data = mail.fetch(bytes(str(id_list), 'utf-8'), '(RFC822)')
for responsepart in data:
if isinstance(responsepart, tuple):
msg = email.message_from_string(responsepart[1].decode('utf-8'))
email_subject = msg['subject']
email_from = msg['from']
print('From : ' + email_from + '\n')
print('Subject : ' + email_subject + '\n')
except Exception as e:
print(str(e))
read_email_from_gmail()
输出。FETCH命令错误: BAD [b'Could not parse command'] BAD [b'Could not parse command'] 失败。
我想用Python从Gmail接收邮件。谁能帮帮我,我哪里做错了? 这个错误是什么?
先谢谢你
我想你把服务器的名字搞错了。 我想你把服务器的名字弄错了,应该是 imap.gmail.com
.
我是这样想的。 我搜索了11001和getaddrinfo,得知这个错误代码是Windows说找不到主机。
我试着ping了一下 imap.google.com
和主机名无法解析。
我搜索了一下 "google imap服务器",发现一个不同的主机名在 谷歌的文档.