2017-07-29 68 views
0

我已經搜索了一遍又一遍,但似乎沒有什麼能解決我的問題。當變量持有「imaplib.IMAP4_SSL(」imap.google.com「)」引發過分模糊的「語法錯誤」

mail = imaplib.IMAP4_SSL("imap.google.com") 

被聲明它拋出語法錯誤,但告訴我絕對沒有,但它是不正確的。有誰知道這裏發生了什麼,或知道如何解決它?如有需要,請隨時索取更多詳情。我使用SMTP端口143

代碼片段:

from subprocess import Popen 
import smtplib 
import time 
import imaplib 
import email 
import threading 

ORG_EMAIL = "@gmail.com" 
FROM_EMAIL = "magikboy01" + ORG_EMAIL 
FROM_PWD = "********" 
SMTP_SERVER = "imap.gmail.com" 
SMTP_PORT = 143 

def read_email_from_gmail(): 
    threading.Timer(300, read_email_from_gmail().start() 

    mail = imaplib.IMAP4_SSL(SMTP_SERVER) 
    mail.login(FROM_EMAIL, FROM_PWD) 
    mail.select('inbox') 

回答

0

你缺少一個右括號:

threading.Timer(300, read_email_from_gmail().start() 

壽LD是:

threading.Timer(300, read_email_from_gmail().start()) 

這是語法錯誤的根源,但由於編譯器的工作方式,有時它們會在下一行的錯誤。

0

想通了:)

threading.Timer apparentlyis與Python 2.x的不兼容,即使我認爲蟒蛇是上運行3.x版