2012-09-03 28 views
1

我使用一個循環下面的代碼從由用戶填寫電子表格發送電子郵件:繼續與腳本時錯誤的電子郵件谷歌應用程序

MailApp.sendEmail(Email, subject, body, {htmlBody: body, attachments: pdf}); 

的問題是,用戶有時會誤用電子郵件地址,當腳本運行並找到不正確的電子郵件地址時,它會暫停腳本。

是否有繼續循環並跳過錯誤?任何人都可以給我一個解決方案嗎?

回答

0

您可以使用正則表達式來驗證電子郵件地址。我使用這一個:

regex_mail = re.compile('^[a-z0-9][a-z0-9_.\-]*@([a-z0-9]+\.)*[a-z0-9][a-z0-9\-]+\.([a-z]{2,6})$') 

你可以使用Python異常處理與try - 除了處理腳本錯誤。查看此問題: What mail service errors can AppEngine produce?

0

如果用戶使用Google表單填寫電子表格,則應啓用對電子郵件字段的驗證。這不會確保地址存在,只是它的形式正確,但應該避免您看到的錯誤。

發送前使用正則表達式進行驗證依然很明智,正如voscausa所建議的那樣。

使用validateEmail()Validate email address in JavaScript?

if (validateEmail(Email)) { 
    MailApp.sendEmail(Email, subject, body, {htmlBody: body, attachments: pdf}); 
} 
相關問題