好的,我正在研究一种类型的系统,以便我可以使用sms消息在我的计算机上开始操作。我可以让它发送最初的消息:
import smtplib
fromAdd = 'GmailFrom'
toAdd = 'SMSTo'
msg = 'Options \nH - Help \nT - Terminal'
username = 'GMail'
password = 'Pass'
server = smtplib.SMTP('smtp.gmail.com:587')
server.starttls()
server.login(username , password)
server.sendmail(fromAdd , toAdd , msg)
server.quit()
我只需要知道如何等待回复或从Gmail本身提取回复,然后将其存储在变量中以供日后使用。
答案 0 :(得分:12)
您应该使用POP3或IMAP(后者更可取),而不是用于发送电子邮件的SMTP。 使用SMTP的示例(代码不是我的,请参阅下面的URL以获取更多信息):
import imaplib
mail = imaplib.IMAP4_SSL('imap.gmail.com')
mail.login('myusername@gmail.com', 'mypassword')
mail.list()
# Out: list of "folders" aka labels in gmail.
mail.select("inbox") # connect to inbox.
result, data = mail.search(None, "ALL")
ids = data[0] # data is a list.
id_list = ids.split() # ids is a space separated string
latest_email_id = id_list[-1] # get the latest
result, data = mail.fetch(latest_email_id, "(RFC822)") # fetch the email body (RFC822) for the given ID
raw_email = data[0][1] # here's the body, which is raw text of the whole email
# including headers and alternate payloads
从here
无耻地偷走了答案 1 :(得分:3)
Uku的回答看起来很合理。但是,作为一个实用主义者,我将回答你没有问过的问题,并建议一个更好的IMAP和SMTP库。
我没有在其他任何项目中使用过这些项目,因此您需要自己进行评估,但两者都可以使用得更好。
答案 2 :(得分:1)
我建议你使用这个新的lib https://github.com/charlierguo/gmail
Google的GMail的Pythonic界面,以及您将使用的所有工具 需要。搜索,阅读和发送多部分电子邮件,存档,标记为 读/未读,删除电子邮件和管理标签。
用法
from gmail import Gmail
g = Gmail()
g.login(username, password)
#get all emails
mails = g.inbox().mail()
# or if you just want your unread mails
mails = g.inbox().mail(unread=True, from="youradress@gmail.com")
g.logout()