1. 程式人生 > >Python--指令碼自動傳送郵件

Python--指令碼自動傳送郵件

自動傳送郵件功能是我們經常要用到的,比如每天定時統計報表資訊,然後自動傳送給運營人員,協助運營人員進行業務資料分析。本文是用Python寫的一個自動傳送郵件的指令碼,呼叫函式時,直接把發件人郵箱地址、密碼、收件人郵箱地址、郵件標題、內容等資訊傳遞給函式,即可實現自動傳送郵件功能。

指令碼程式碼如下:

[python] view plain copy print?
  1. # -*- coding: UTF-8 -*-
  2. import sys, os, re, urllib, urlparse  
  3. import smtplib  
  4. import traceback  
  5. from email.mime.text 
    import MIMEText  
  6. from email.mime.multipart import MIMEMultipart  
  7. def sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password):  
  8.     ”’ 
  9.     @subject:郵件主題 
  10.     @msg:郵件內容 
  11.     @toaddrs:收信人的郵箱地址 
  12.     @fromaddr:發信人的郵箱地址 
  13.     @smtpaddr:smtp服務地址,可以在郵箱看,比如163郵箱為smtp.163.com 
  14.     @password:發信人的郵箱密碼 
  15.     ”’
  16.     mail_msg = MIMEMultipart()  
  17.     ifnot isinstance(subject,unicode):  
  18.         subject = unicode(subject, ’utf-8’)  
  19.     mail_msg[’Subject’] = subject  
  20.     mail_msg[’From’] =fromaddr  
  21.     mail_msg[’To’] = ‘,’.join(toaddrs)  
  22.     mail_msg.attach(MIMEText(msg, ’html’‘utf-8’))  
  23.     try:  
  24.         s = smtplib.SMTP()  
  25.         s.connect(smtpaddr)  #連線smtp伺服器
  26.         s.login(fromaddr,password)  #登入郵箱
  27.         s.sendmail(fromaddr, toaddrs, mail_msg.as_string()) #傳送郵件
  28.         s.quit()  
  29.     except Exception,e:  
  30.        print“Error: unable to send email”
  31.        print traceback.format_exc()  
  32. if __name__ == ‘__main__’:  
  33.     fromaddr = [email protected]
  34.     smtpaddr = ”smtp.163.com”
  35.     toaddrs = [[email protected],[email protected]]  
  36.     subject = ”測試郵件”
  37.     password = ”xxxxxxxx”
  38.     msg = ”測試一下”
  39.     sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password)  
# -*- coding: UTF-8 -*-
import sys, os, re, urllib, urlparse
import smtplib
import traceback
from email.mime.text import MIMEText
from email.mime.multipart import MIMEMultipart

def sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password):
    '''
    @subject:郵件主題
    @msg:郵件內容
    @toaddrs:收信人的郵箱地址
    @fromaddr:發信人的郵箱地址
    @smtpaddr:smtp服務地址,可以在郵箱看,比如163郵箱為smtp.163.com
    @password:發信人的郵箱密碼
    '''
    mail_msg = MIMEMultipart()
    if not isinstance(subject,unicode):
        subject = unicode(subject, 'utf-8')
    mail_msg['Subject'] = subject
    mail_msg['From'] =fromaddr
    mail_msg['To'] = ','.join(toaddrs)
    mail_msg.attach(MIMEText(msg, 'html', 'utf-8'))
    try:
        s = smtplib.SMTP()
        s.connect(smtpaddr)  #連線smtp伺服器
        s.login(fromaddr,password)  #登入郵箱
        s.sendmail(fromaddr, toaddrs, mail_msg.as_string()) #傳送郵件
        s.quit()
    except Exception,e:
       print "Error: unable to send email"
       print traceback.format_exc()

if __name__ == '__main__':
    fromaddr = "[email protected]"
    smtpaddr = "smtp.163.com"
    toaddrs = ["[email protected]","[email protected]"]
    subject = "測試郵件"
    password = "xxxxxxxx"
    msg = "測試一下"
    sendmail(subject,msg,toaddrs,fromaddr,smtpaddr,password)


相關推薦

Python--指令碼自動傳送郵件

自動傳送郵件功能是我們經常要用到的,比如每天定時統計報表資訊,然後自動傳送給運營人員,協助運營人員進行業務資料分析。本文是用Python寫的一個自動傳送郵件的指令碼,呼叫函式時,直接把發件人郵箱地址、密碼、收件人郵箱地址、郵件標題、內容等資訊傳遞給函式,即可實現

Python指令碼——自動提醒傳送郵件

小組要求每週五下班前要傳送週報,但是我每次都忘記,雖然Foxmail郵箱能設定提醒,但還是想自己寫個指令碼來實現相關功能。 主要功能:每週五晚上7點提醒我傳送週報郵件。 主要思路: 傳送郵件 彈框提醒 定時執行指令碼 1. 傳送郵件   最

windows關機前執行指令碼設定與關機blat自動傳送郵件指令碼模板

1.開始——執行——gpedit.msc2.策略——計算機配置——Windows設定——指令碼(啟動/關機)3.右擊"關機"4.新增——瀏覽:選擇指令碼確定;5.完成設定,重啟測試。 注:關機指令碼啟動目錄:C:\Windows\System32\GroupPolicy\Machine\Scripts\Sh

python selenium-7自動傳送郵件

https://jingyan.baidu.com/article/647f0115b78f8d7f2148a8e8.html 1.傳送HTML格式的郵件 import smtplib from email.mime.text import MIMEText from email.header impor

Appium+python 自動傳送郵件(2)

移動端執行完測試case之後,通過郵件自動傳送測試報告。大體流程如下: 1、通過unittest框架的discover()發現所有測試用例 2、使用HTMLTestRunner的run()方法執行測試用例,生成HTML測試報告 3、尋找測試報告目錄下的最新測試報告,返回最新測試報告的路徑 4、將最新測

python 自動傳送郵件報表,正文插入圖片,帶附件

# -*- coding: utf-8 -*- """ Created on Wed Aug 15 17:44:33 2018 @author: cp """ from email.mime.text import MIMEText from email.mime.mul

Linux指令碼編寫程式監控系統資訊並設定報警自動傳送郵件

yum -y install mailx yum -y install sendmail #獲取cpu使用率 cpuUsage=`top -n 1 | awk -F '[ %]+' 'NR==3 {print $3}'` #獲取磁碟使用率 data_nam

python的yagmail庫-自動傳送郵件功能

一、yagmail安裝 使用pip install yagmail命令安裝。我的環境是python2.7.15,使用pip直接安裝就ok了。 二、例項 1、開通SMTP服務 檢查使用的郵箱伺

python 自動傳送郵件傳送多人、群發、多附件

1、最近公司實現部分資料統計、分析的報表進行每天定時傳送到相關人員的郵箱之中的配置程式碼被人為刪除了,需要重新恢復該功能,由於原先是在linux上使用shell配置傳送,實在是太繁瑣,所以準備使用python來實現該功能,不過發現網上各種文件都是未經過整理,程式碼寫的很不友

Python使用SMTP自動傳送郵件

連結中的教程介紹了基礎的使用方法,這裡不再重複。這裡主要是介紹使用中碰到的問題 下面是我的示例程式 # -*-coding:utf-8 -*- ''' Created on 2016.11.12 Se

python自動傳送郵件所遇問題集錦

問題一:smtplib.SMTPAuthenticationError: (550, b'\xd3\xc3\xbb\xa7\xce\xde\xc8\xa8\xb5\xc7\xc2\xbd') 因為發件的郵箱伺服器有驗證碼,需要到郵箱中開啟SMTP服務即可。 詳情參考:https://jing

CMD Telnet 命令列自動傳送郵件指令碼

定期監控sql server服務執行狀態,如服務停止,則啟動它?這個比較簡單的方法可以實現  net start 服務名稱 放到windows的定時執行中就好了 如果服務已經啟動則報 服務已經啟動 以下是監控服務,併發送郵件 首先簡單介紹一下SMTP SMTP基本命令

自用Git提交後自動傳送郵件指令碼

首先是下載這個post-receive指令碼,我稍微做了些修改,支援在.gitconfig中指定郵件傳送程式(hooks.sendmail)和發件人資訊(hooks.emailfrom)。 指令碼下載後放到倉庫的hooks目錄下,並“chmod a+x post-recei

Python】利用python自動傳送郵件

## 前言 在訓練網路的過程中,需要大量的時間,雖然可以預估網路訓練完成時間,但蹲點看結果著實有點不太聰明的亞子。 因此,參照師兄之前發的python利用smtp自動發郵件的程式碼,我作了些調整,並參照網上的開原始碼,整理出了加強版(可以傳檔案),這樣訓練的log還有model,或者是遠端電腦上的檔案都可

Python指令碼自動運營多個自媒體平臺,不寫稿坐等收錢,只告訴你原理

使用此方法最低成本不超過120元/年,年收入根據你所選擇垂直行業和帳號多少以及哪些平臺來決定 我所說的最低成本是針對我而言來說的,辛苦點的可以做到0成本操作,喜歡冒險的總投入不會超過5000塊錢 首先第一步就是你要有自媒體帳號,帳號和平臺不限,根據你對平臺的理解來自行選擇使用那個平臺,

python指令碼自動刪除空資料夾和非指定型別檔案(附贈批量重新命名)

python指令碼自動刪除空資料夾和非指定型別檔案 直接上程式碼吧: # -*- coding: utf-8 -*- """ Created on Sun Sep 16 22:51:27 2018 @author: lele """ import

python 使用SMTP傳送郵件[HTML格式,帶附件]

今天百度學習瞭如何在python中使用SMTP傳送郵件,包括帶HTML格式和附件。 基本套路就是定義一個MIMEText(不帶附件)或者MIMEMultipart(可帶多個附件),然後再連線、登入郵件伺服器併發送即可。(傳送HTML格式的郵件與純文字訊息的郵件不

python 使用exchange傳送郵件

安裝庫exchangelib pip install exchangelib 指令碼內容 # coding=utf-8 # # Created on 2018/2/ from exchangelib import DELEGATE, Account, Credential

python中同步傳送郵件的步驟

1. 設定smtp伺服器, 開啟客戶端授權碼, 不同的郵箱設定略有不同, 下面是以126郵箱為例 2. 專案配置檔案中配置資訊 # 傳送郵件配置 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' # smpt服務

Intouch/ifix語音報警系統製作(4-自動傳送郵件提醒)

在近期專案完成後,有遇到情況:類似於語音報警後,中控室人員未及時報告給我們造成了事件的危害升級,以及造成很不好的影響。針對這個情況特此新增語音報警後,自動傳送郵件提醒,完善現有的報警機制。 1.函式編寫(選自網友指令碼) Option Explicit '需要引用 Mi