YangLei's

导航

 

1、申请163账号,开通客户端stmp协议获得登录密码如:“VYCSWZBGIWMQVNGG”

2、代码如下:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import smtplib
from email.mime.text import MIMEText
from email.header import Header
from xpinyin import Pinyin
import datetime as dt
import pandas as pd
import xlrd
import os

def loginmail(name,content):
    p = Pinyin()
    # 第三方 SMTP 服务
    mail_host = "smtp.163.com"  # 设置服务器
    mail_user = "zhangMingMingmj@163.com"  # 用户名
    mail_pass = "VYCSWZBGIWMQVNGG"  # 口令
    port = 465
    sender=mail_user    #用户名
    receivers =p.get_pinyin(name, '')+'@qq.com'
    body = content 
    # 设置邮件正文,这里是支持HTML的
    msg = MIMEText(body, 'html') 
    # 设置正文为符合邮件格式的HTML内容
    msg['subject'] =  '{}年{}月份工资条'.format(dt.datetime.now().year, dt.datetime.now().month-1) 
    # 设置邮件标题
    msg['from'] = sender  
    # 设置发送人
    msg['to'] = receivers  

    try:
        #ssl
        smtpObj = smtplib.SMTP_SSL(mail_host, port)
        smtpObj.login(mail_user, mail_pass)
        smtpObj.sendmail(sender, receivers, msg.as_string())
        print("邮件发送成功"+receivers)
    except smtplib.SMTPException:
        print("Error: 发送失败"+receivers)

def main():
    print("准备发送")
    excel_name = input("请输入需要执行的excel文件路径:")
    if os.path.isfile(excel_name):
        sheet=pd.read_excel(excel_name)
        for row in sheet.iloc:
            df=pd.DataFrame(row)
            loginmail(row["姓名"],df.to_html())
    else:
        print("找不到此目录下的"+excel_name)

    os.system('pause')

if __name__ == '__main__':
    main()

需要安装

1、pip install xpinyin 将名字装换成拼音,然后根据拼音获取固定格式的邮箱地址

2、pip install pandas  将excel数据读入到数据操作集中

3、pip install xlrd  读取excel

3、打包成exe

1、安装 pip install pyinstaller

2、执行 pyinstaller xxx.py 等待生成exe

3、双击exe,如果报错缺少库则将缺少的库的文件夹拷贝至exe同目录

4、可以在cmd 里面执行exe -d 获取失败信息

4、excel 文件格式

 

 5、值得注意的是打包的虚拟环境的选择,电脑有多个python环境会在安装库的时候提示已经存在另外一个地方了,后期打包好后手动去相应的地方拷贝即可

 6、正常环境下面打包出的exe会包含很多当前程序用不上的库所以会很大,我们可以在anaconda里面新建一个当前程序的虚拟环境,切换到当前虚拟环境  conda activate myvirenv然后在虚拟环境中安装需要的库再打包就只有几十兆了。

 

posted on 2020-05-10 11:16  大狼熙熙  阅读(439)  评论(0编辑  收藏  举报