1. 程式人生 > >Python smtplib.SMTP_SSL() 登入郵箱併發送郵件

Python smtplib.SMTP_SSL() 登入郵箱併發送郵件

由於個人比較懶,每次寫郵件時總要去開啟郵箱地址然後登入,有的時候還容易忘記密碼,感覺很不方便,於是就想寫一個在txt檔案中寫內容,然後直接讀取,執行指令碼檔案,直接傳送內容。

還有很多需要改進的地方,如上傳下載檔案等,接收檔案提醒,閱讀檔案內容等。還有一些配置內容也不是很方便。

py檔案如下:

# !/usr/bin/python
# -*-coding:utf-8-*-
import smtplib
from email.mime.text import MIMEText

def send_email(host, username, passwd, send_to, subject, content):
    msg = MIMEText(content)
    my_email = username+"<"+username+">"
    msg['From'] = my_email
    msg['Subject'] = subject
    msg['To'] = ",".join(send_to)

    try:
        # server = smtplib.SMTP()
        # server.connect(host)
        server = smtplib.SMTP_SSL(host,465)
        server.ehlo()
        # server.starttls()
        server.login(username, passwd)
###第一種方法寫的時候遇到了困難,問題沒有是有strip(),因為此處使用了 msg.as_string(),應該是將內容轉化成了str,然後又進行的處理
        server.sendmail(username, send_to, msg.as_string())
        server.close()
        return 'sucessfully'
    except Exception as e:
        print 'Exception: send email failed', e
        return 'failed to send mail'

if __name__ == '__main__':
    filename = "emails_txt"
    f = open(filename)
    lines = f.readlines()
    # file = f.read()
#######################方法1############
###此種方法是在txt檔案中配置內容和寫檔案內容
    host ="smtp.qq.com"
    username = lines[1].split(':')[-1].strip()
    # # host = "smtp." + str(username.split('@')[-1])
    passwd = lines[2].split(':')[-1].strip()
    to_list = lines[3].split(':')[-1].strip().split(',')
    subject = lines[4].split(':')[-1].strip()
    content = lines[5].split(':')[-1]
    # print type(passwd), passwd
    # print type(to_list), to_list
    # print type(subject), subject
    # print type(content), content
    send_email(host, username, passwd, to_list, subject, content)
#######################方法2############
###下面這種方法是在程式中直接寫內容,一旦檔案內容比較多的時候,就很不適合使用了
    """
    host = 'smtp.qq.com'
    username = '
[email protected]
' #此password為進入QQ郵箱設定頁面,開啟SMTP服務,發簡訊獲取的授權碼,而非通常我們使用的password passwd = 'zcgmkptvlzqgfcef' to_list = ['[email protected]','[email protected]'] subject = "txt檔案傳送郵件" content = "用python傳送郵件" content = file # print type(passwd), passwd # print type(to_list), to_list # print type(subject), subject # print type(content), content if send_email(host, username, passwd, to_list, subject, content): print "done!" else: print "failed!" """

txt檔案

host:smtp.qq.com
username:[email protected]
passwd:zcgmkptvzlqgfcff
to_list:[email protected],[email protected]
subject:這個郵件
content:試試能行不

參考學習連結:https://www.programcreek.com/python/example/6443/smtplib.SMTP_SSL。

                       https://blog.csdn.net/zniahfag/article/details/51387996。

相關推薦

Python smtplib.SMTP_SSL() 登入郵箱併發郵件

由於個人比較懶,每次寫郵件時總要去開啟郵箱地址然後登入,有的時候還容易忘記密碼,感覺很不方便,於是就想寫一個在txt檔案中寫內容,然後直接讀取,執行指令碼檔案,直接傳送內容。還有很多需要改進的地方,如上傳下載檔案等,接收檔案提醒,閱讀檔案內容等。還有一些配置內容也不是很方便。

python 使用selenium webdriver編寫自動登入126或163郵箱併發郵件的程式。

這是一個有問題的程式碼,擺弄了很久,找不到解決的辦法,希望看到我錯誤的大神給於留言指點。也可以發郵件給我,郵箱[email protected],大家有高明的解決方案,歡迎大佬指教。謝謝!我的問題主要出在點選“寫信”按鈕無反應。無法準確找到獲取該按鈕,並有反應的方法

[selenium]實現自動登入163郵箱併發郵件

一、最近在學習selenium,感覺功能蠻好的,先給一張效果圖: 二、程式碼如下: #-*-coding:utf-8-*- from selenium import webdriver fr

python 獲取錯誤日誌,併發郵件

# -*- coding: utf-8 -*- ''' 傳送錯誤日誌 ''' import os import smtplib import time

Python Django 配置QQ郵箱郵件

highlight ati cert 設置 als quic smtp credit faq 一、實驗環境 Python2.7 + Django1.10.0 二、獲取QQ郵箱授權碼 1、什麽是授權碼? 授權碼是QQ郵箱推出的,用於登錄第三方客戶端的專用密碼。

python3+selenium實現126郵箱登陸併發郵件

基於selenium,使用chrome瀏覽器,完成126郵箱登陸併發送發郵件功能,暫時未封裝。 from selenium import webdriver # 匯入顯示等待類 from selenium.webdriver.support.ui import WebDri

SpringBoot攔截全域性異常併發郵件給指定郵箱

主要是看一下Springboot中傳送郵件的方法,至於攔截Springboot全域性異常之前的文章中有。一 傳送郵件在Springboot中傳送郵件非常簡單。pom.xml引入maven依賴 <dependency> <groupId>org.

Unity學習篇之一鍵新增附件併發郵件(支援多種郵箱平臺)

最近接觸到通過Unity傳送郵件的功能,需要將正文以及本地的檔案作為附件傳送到指定郵箱,最後通過SMTP實現了該功能,試了下QQ郵箱、163郵箱,親測可用(PC端釋出可用,手機端等未測試),總結如下: QQ郵箱 QQ郵箱需要開啟SMTP服務點此檢視教程 using Un

【詳解】【記錄】Python寫Excel預約資訊表併發郵件

類似於本例我們寫過兩個指令碼了,但還是遇到了一些問題。 本例是比較基礎且標準的一個版本。 實現的操作是:從資料庫中取出資料,寫入Excel表,併發送郵件。相當簡單的一個Excel表。 【傳送給單人版】 #!/usr/bin/python # -*- coding: UT

PHP 利用 QQ 郵箱郵件「PHPMailer」

png class onf 認證 git 必須 att 函數 bject 在 PHP 應用開發中,往往需要驗證用戶郵箱、發送消息通知,而使用 PHP 內置的 mail() 函數,則需要郵件系統的支持。 如果熟悉 IMAP/SMTP 協議,結合 Socket 功能就可以編寫

thinkPHP使用163郵箱郵件

啟用 寫博客 span 地址 use 技術 dma htm 控制 thinkPHP3.2.3使用163郵箱發送郵件 (一) 前言 第一次寫博客,主要就是為了分享一下自己敲代碼的一些心得並整理一下自己的知識以便以後查看。 我原來一直在找通過thinkPHP使用QQ郵箱發送郵

C# 使用 Lotus notes 公共郵箱郵件

*** set char which replace ilb mva file odin 公司的郵件系統用的是反人類的 Lotus notes, 你敢信? 最近要實現一個功能,郵件提醒功能,就是通過自動發送提醒郵件 前前後後這個問題搞了2天,由於公司的諸多條件限制,無

織夢網站使用網易郵箱郵件

body .com 郵件 png 技術分享 clas 參數 使用 基本 1. 進入網易郵箱,根據提示開通SMTP,期間要設置一次密碼 2. 進入織夢網站後臺。系統 - 系統基本參數 - 核心設置 網站發信EMAIL:填寫網易郵箱 是否啟用smtp方式發送郵件:

python 生成測試報告並發郵件

find file 格式 報告 自動化 repo self. remote tex 前言:   使用unittest編寫自動化測試腳本,執行腳本後可以很方便看到測試用例的執行情況。 但如果想向領導匯報工作,就需要提供更直觀的測試報告。 思路:   使用unittest編寫測

java實現郵箱郵件

cep nds session clas bug and ack tex tac 第一步:封裝發件人賬號密碼 import javax.mail.Authenticator;import javax.mail.PasswordAuthentication; /** *

Laravel5 --- QQ郵箱郵件

address ron chan exc flag 之前 xxx sage 服務 1. 在此之前先確認QQ郵箱是否開啟了POP3/SMTP服務,如果未開啟則須開啟   QQ郵箱->設置->賬戶->POP3/IMAP/SMTP/Exchange/CardDA

利用python的zmail模塊發郵件

python zmail今天看到馬哥linux運維的微信公眾號裏,推送了一個文章,用python實現的發送郵件的案例,故此實驗了一把,成功了,速記錄在案。 使用python3.x版本,安裝zmail模塊;pip install zmail 本次使用qq郵箱發送郵件,前提是需要打開qq郵箱的pop3/smtp功

【碼】javaMail+spring+qq郵箱郵件

sage host val back 郵箱 服務 world sender art 1.依賴:spring版本根據具體環境修改 <dependency> <groupId>javax.mail</group

qq郵箱郵件封裝

授權碼 fault 使用 class import Coding from sendmail pre 使用qq發送郵件 # coding=utf8 """ qq郵箱發送郵件 """ import sys reload(sys) sys.setde

Linux下如何利用騰訊郵箱郵件

Linux下如何利用騰訊郵箱發送郵件Linux下如何利用騰訊郵箱發送郵件1、首先安裝好sendmail.mailx; yum -y install sendmail yum install mailx -y 設置好自啟動 /etc/init.d/sendmail start chkconfig sendmai