import serial
import imaplib
from time import sleep
IMAP_SERVER='imap.gmail.com'
IMAP_PORT=993
ser= serial.Serial ('/dev/ttyACM0',9600)
M = imaplib.IMAP4_SSL(IMAP_SERVER, IMAP_PORT)
rc, resp = M.login('user@gmail.com', 'password')
print rc, resp
while True:
M.select()
for msg_num in M.search("INBOX", "UNDELETED")[1][0].split():
msg = M.fetch('1', '(BODY.PEEK[TEXT])')
String = msg[1][0][1][139:161]
print String
if String == "This is just a test...":
ser.write('0')
sleep(1)
我是python编程的新初学者,上面的python代码就是我正在为我想做的程序使用的代码。当我在终端中运行这个程序时,我得到的响应是我已经验证了我的帐户,然后它显示了字符139&161之间的消息,在示例电子邮件中如下所示:
这只是一个测试。。。在
这是在终端打印出来的。如果我删除收件箱中的邮件,则会显示:
^{pr2}$
我相信这是因为我的收件箱里没有任何信息。现在,我想做的是,如果没有消息要运行一次又一次,直到有消息出现在我的收件箱中,并对该消息执行相应的挂起操作