摘要:中模塊模塊使得處理郵件變得比較簡單我這里參考網上小五義的一些代碼,實現了一個簡單的發送郵件例子,具體代碼如下常量腳本郵件相關配置變量發送內容相關配置主腳本參考小五義
python_send_mail_example
python 中 email模塊、smtplib模塊 使得處理郵件變得比較簡單.
我這里參考網上小五義的一些代碼,實現了一個簡單的發送郵件例子,具體代碼如下 :
常量腳本 constant_mail.py#!/usr/bin/env python # _*_ coding: utf-8 _*_ ## date: 20160127 ## 郵件相關配置變量 mail_to_list = ["yourname01@x.com", "yourname02@x.com"] #mail_host = "smtp.exmail.qq.com:465" mail_host = "smtp.exmail.qq.com:25" mail_user = "yourname" mail_password = "yourpassword" mail_postfix = "x.com" mail_from = mail_user + " <" + mail_user + "@" + mail_postfix + ">" mail_user_address = "yourname@x.com" # 發送內容相關配置 subject = "default-email-subject" mail_type = "plain"主腳本 send_mail.py
import sys sys.path.append("./") import constant_mail import os, smtplib, mimetypes, base64 from email.mime.text import MIMEText ## about var mail_to_list = constant_mail.mail_to_list mail_host = constant_mail.mail_host mail_user = constant_mail.mail_user mail_user_address = constant_mail.mail_user_address mail_password = constant_mail.mail_password mail_postfix = constant_mail.mail_postfix mail_from = constant_mail.mail_from mail_subject = constant_mail.subject mail_type = constant_mail.mail_type def get_mail_to_list(mailto): to_list = mailto.split(",") for i in range(0, len(to_list)): to_list[i] = to_list[i].strip()+"@" + mail_postfix return to_list def send_mail(mail_to_list, subject, content, mail_type): me = mail_from message = MIMEText(content, _subtype=mail_type, _charset="utf-8") message["Subject"] = subject message["From"] = me message["To"] = ";".join(mail_to_list) try: server = smtplib.SMTP() server.connect(mail_host) server.login(mail_user_address, mail_password) server.sendmail(my_info, mail_to_list, message.as_string()) server.close() return True except Exception, e: print >> sys.stderr, "[ERROR]: %s" % str(e) sys.exit(-1) def main(): print len(sys.argv) if len(sys.argv) < 4 : print >> sys.stderr, "args count : " + str(len(sys.argv)) + " is error!" return mail_subject = sys.argv[1] content=sys.argv[2] mail_to_list = get_mail_to_list(sys.argv[3]) if send_mail(mail_to_list, mail_subject, content, mail_type): print >> sys.stdout, "[INFO] Email Auto Send Success!" else: print >> sys.stderr, "[ERROR] Email Auto Send Failure!" if __name__ == "__main__": main()
參考 : 小五義
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/37732.html
摘要:導入庫導入數據集這一步的目的是將自變量和因變量拆成一個矩陣和一個向量。 數據預處理是機器學習中最基礎也最麻煩的一部分內容在我們把精力撲倒各種算法的推導之前,最應該做的就是把數據預處理先搞定在之后的每個算法實現和案例練手過程中,這一步都必不可少同學們也不要嫌麻煩,動起手來吧基礎比較好的同學也可以溫故知新,再練習一下哈 閑言少敘,下面我們六步完成數據預處理其實我感覺這里少了一步:觀察數據...
摘要:重塑計劃一選擇符元素選擇符通配選擇符,選擇所有元素對象。選擇符,以唯一標識符屬性等于的對象作為選擇符。選擇具有屬性且屬性值為包含的字符串的元素。偽類選擇符設置超鏈接在未被訪問前的樣式。僅用于規則匹配不含有選擇符的元素。 CSS重塑計劃(一):選擇符 元素選擇符 *通配選擇符(Universal Selector),選擇所有元素對象。E類型選擇符(Type Selector),以文檔語言...
摘要:鏈表鏈表是最基礎的動態數據結構鏈表是非常重要的線性數據結構以下三種,底層都是依托靜態數組,靠解決固定容量問題。要清楚什么時候使用數組這樣的靜態數據結構,什么時候使用鏈表這類的動態數據結構。 showImg(https://segmentfault.com/img/remote/1460000018597053?w=1832&h=9943); 前言 【從蛋殼到滿天飛】JAVA 數據結構解...
閱讀 2235·2021-11-16 11:44
閱讀 641·2019-08-30 15:55
閱讀 3271·2019-08-30 15:52
閱讀 3595·2019-08-30 15:43
閱讀 2196·2019-08-30 11:21
閱讀 435·2019-08-29 12:18
閱讀 1945·2019-08-26 18:15
閱讀 468·2019-08-26 10:32