编写背景:

=========================

目前公司的福利饭补是是人力邮件发送的,每个人需要手动对应的发一遍相应的数据,没研究过outlook是否有读取excel群发邮件的功能,看着人力发送这么吃力,索性写了个工具协助读取excel群发邮件。

===============================#!/usr/local/bin/python2.7

# encoding: gbk

import wx

import wx.grid

import os

import cPickle

import wx.lib.masked as masked

import subprocess

import time

import traceback

from email.message import Message

from email.mime.multipart import MIMEMultipart

from email.mime.text import MIMEText

from email.mime.image import MIMEImage

from email.mime.base import MIMEBase

from email import encoders

import mimetypes

from email.mime.audio import MIMEAudio

import xlrd

import pykka

import mailok

import sys

reload(sys)

sys.setdefaultencoding("gbk")

class Example(wx.Frame):

def __init__(self,parent,title):

super(Example,self).__init__(parent,title=title,size=(500,480),style=wx.DEFAULT_FRAME_STYLE ^(wx.MAXIMIZE_BOX | wx.RESIZE_BORDER))

self.InitUI()

self.Centre()

self.Show()

def InitUI(self):

menuBar = wx.MenuBar()

filemenu = wx.Menu()

helpmenu = wx.Menu()

menuBar.Append(filemenu,"&文件")

fitem = filemenu.Append(1001,"&导入excel文件","导入excel文件")

self.Bind(wx.EVT_MENU, self.OnIn, id=1001)

fitem = filemenu.Append(1002,"&退出系统","退出系统")

self.Bind(wx.EVT_MENU, self.OnExit, id=1002)

menuBar.Append(helpmenu,"&帮助")

helpem = helpmenu.Append(1003,"&关于V1.0","关于")

self.Bind(wx.EVT_MENU, self.OnAbout, id=1003)

helpem = helpmenu.Append(1004,"&使用说明","使用说明")

self.Bind(wx.EVT_MENU, self.OnHelp, id=1004)

self.SetMenuBar(menuBar)

self.SetTitle("xxxx人力资源-饭补发放程序 V1.0")

self.SetBackgroundColour(wx.Colour(28,134,238))

panel=wx.Panel(self,-1)

text=basicLabel = wx.StaticText(panel, -1, "Excel文件路径",(50,115))

font = wx.Font(10, wx.SWISS, wx.NORMAL, wx.BOLD)

text.SetFont(font)

self.basicText1 = wx.TextCtrl(panel,-1,size=(200, 20),pos=(180,115))

self.Center()

self.Show(True)

self.button1 = wx.Button(panel, -1, "发送邮件", pos=(100, 260),size=(80,50))

self.button1.Bind(wx.EVT_BUTTON, self.OnOpen)

self.button3 = wx.Button(panel, -1, "取消发送", pos=(280, 260),size=(80,50))

self.button3.Bind(wx.EVT_BUTTON, self.OnClear)

def OnIn(self, event):

dlg1 = wx.FileDialog(self, "请选择要导入的excel文件...", os.getcwd(),style=wx.OPEN)

if dlg1.ShowModal() == wx.ID_OK:

file = dlg1.GetPath()

self.basicText1.AppendText(file)

#self.ReadFile()

#self.SetTitle(self.title + " -- " + self.filename)

dlg1.Destroy()

def OnExit(self, event):

self.Close(True)

def OnAbout(self, event):

wx.MessageBox("Copyright(c)2014-2088 The xxx All Rights Reserved Version: 1.0 Support: wuxiaobing@xxxx.com", "关于",wx.ICON_INFORMATION)

def OnHelp(self, event):

wx.MessageBox("1、该工具适合公司饭补邮件群发。 2、读取文件[excel]格式必须符合规定的模板。 3、本版为试用,针对试用下版会改进。", "帮助",wx.ICON_QUESTION)

def OnOpen(self,event):

xmlfile=self.basicText1.GetValue()

book = xlrd.open_workbook(xmlfile)

sheet_name=book.sheet_names()

table = book.sheets()[0]

for i in range(2,table.nrows):

name=table.cell(i,1).value

mail=table.cell(i,2).value

wucan=table.cell(i,3).value

jiaban=table.cell(i,4).value

heji=table.cell(i,5).value

print mailok.sendTextEmail(mail, "2014年7月份餐补金额通知"+" ",

name+" 您好 :"+" "+

" "+" "+

" "+"2014年7月餐补:"+str(wucan)+" 元 ,"+"加班餐补:"+str(jiaban)+" 元 ,"+"餐补(午餐+加班餐补)合计:"+str(heji)+"元 。"+" "+

" "+" "

" "+ "为了不耽误报销,请您提前准备好相应票据,并于2014年7月25日前将票据交到前台票据箱,谢谢!"

"""

xxx

北京xxx有限公司 行政部

地址:北京xxx

邮编:100102

网址:www.xxx.com

邮箱:xxx@xxx.com

手机:xxx

""")

def OnClear(self,event):

self.Close(True)

if __name__ == "__main__":

app = wx.App()

Example(None,title="Layout1")

app.MainLoop()

python群发邮件1000人-python读取excel群发邮件(一)相关推荐

  1. python群发邮箱软件下载_python群发邮件1000人

    python发邮件是依赖STMP模块,今天一米软件就来跟大家说说python群发邮件1000人该如何操作. SMTP(Simple Mail Transfer Protocol)即简单邮件传输协议,它 ...

  2. 如何用Python语言编写源程序,读取Excel中数据,并画出柱状图?

    现在,随着计算机的普及,以及数据量的增多,对大型数据的分析已经是我们手算不能解决的了,必须借助计算机:那么,学习计算机其实也和我们学习中文.英文一样,要学习他们的写作规则,掌握其中原理.所以,我们首先 ...

  3. python生成表格文件_python 读取excel文件生成sql文件实例详解

    python 读取excel文件生成sql文件实例详解 学了python这么久,总算是在工作中用到一次.这次是为了从excel文件中读取数据然后写入到数据库中.这个逻辑用java来写的话就太重了,所以 ...

  4. python绘制表格界面_python 读取 excel 生成 html 页面

    前言 有天老板找我到办公室跟我说要做一个商城,商城卖出去东西就有佣金可以拿.我听着就头大.老板打开电脑给我看了网站:你看一下这个网站,照着它的流程就可以拥有一个商城了.我靠过去一看,大概了解一下:原来 ...

  5. 【Python 2.7】xlrd读取Excel文件

    这篇博文参考于<Python 数据处理> 读取Excel文件需要用到xlrd模块,模块下载地址:xlrd下载地址 本博文中Excel文件下载地址:SOWC 2014 Stat Tables ...

  6. Python错误集锦:pandas读取excel提示ImportError: Missing optional dependency ‘xlrd’.

    原文链接:http://www.juzicode.com/archives/3125 错误提示: 用pandas read_excel()方法读取xls或xlsx文件时,提示:ImportError: ...

  7. Python - 装机系列66 pandas读取excel的问题

    说明 感觉是pip有些包的管理没有做好,如果出现如下问题可能要看看是否需要调整 报错类型1:Python XLRDError: Excel xlsx file: not supported 报错类型2 ...

  8. python利用pandas和xlrd读取excel,特征筛选列

    利用xlrd读取excel筛选0值超过99%的列,并删除import xlrdworkbook=xlrd.open_workbook(r"123.xlsx")table = wor ...

  9. python画统计图代码_python读取excel某列内容制作词云图并用条形图统计词频

    有的时候我们把数据整理收集整理到excel中,那么要把excel中的某列文本数据制作词云图怎么做呢? 从最简单的说起. 最简单的词云图就是这种,英文的,不读取文件,不指定背景形状图片,不指定字体. # ...

最新文章

  1. html转为pdf工具,wkhtmltopdf html转pdf工具的使用
  2. 三方会谈进行时,Uber旧金山无人车已被叫停
  3. 面试必问!有没有比读写锁更快的锁?
  4. 7、调用存储过程和函数
  5. 绝命沙虫 精度,double,模拟 牛客白月赛44
  6. 入侵和反击 动态规划
  7. java 应用是单机集群_【架构】Tomcat单机部署多应用Windows
  8. mysql和oracle数据库兼容性_oracle数据库兼容mysql的差异写法
  9. canon l11121e驱动_佳能L11121e驱动官方下载-佳能Canon L11121e打印机驱动4.8.0.16 官方版-东坡下载...
  10. 基于Spring Security的认证授权_应用详解_自定义退出_Spring Security OAuth2.0认证授权---springcloud工作笔记130
  11. 图解分析:基于setnx的分布式锁有什么缺陷
  12. Atitit cms
  13. 【黑苹果】联想ThinkPad X1 Carbon 2016+i5 6200U+MacOS10.15.7 EFI文件下载
  14. 为什么程序员 996 会猝死,而老板 007 却不会? ​
  15. 基于JSP的美食论坛系统毕业设计
  16. Linux挂载硬盘(容量大于2T)
  17. 用Taichi(python)实现星际穿越特效
  18. 燃石、泛生子会师纳斯达克,从招股书看异同(文末附IPO招股书)
  19. 布法罗大学计算机中国博士,【博士】计算机网络方向招生 - 计算机科学技术系(CS)版 - 北大未名BBS...
  20. 手把手教你,5min中,实现OBS存储桶,搭建个人网盘(秒杀百度网盘VIP)

热门文章

  1. 很多人现在还不知道的知识点,Python多进程和多线程详解!
  2. python双端队列及其实现
  3. Flask 中的蓝图 Blueprint
  4. MongoDB高级——聚合
  5. VS2010项目的部署与安装
  6. C#开发ActiveX控件及制作CAB包
  7. max232管脚讲解 单片机与PC通讯
  8. NLP《词汇表示方法(二)词嵌入表示》
  9. Tesla P4测试
  10. HTML-meta标签