pythonexcel内容写⼊html,PYTHON读取EXCEL内容再转变成
HTML添加。。。
需求
读取excel⾥的表格⾥的内容,然后打开本机的outlook。把excel⾥的内容添加到正⽂⾥,注意。这⾥是要添加到正⽂!正⽂!正⽂!⽽不是添加到附件⾥
设计思路
打开excel的⽅法有很多,但是在不知道excel⾥,⾏和列的⼤⼩的情况下,就能获得excel⾥的⾮空值⾏列的办法不多。我这边采⽤的是xlwings这个库,⽤的⽅法是range.current_region这个⽅法。这个⽅法会选择当前range下,有值的区域(⾮空区域)
通过配置options选项,可以指定excel获得的值的格式,int或者string,或者空值返回N/A
2.打开outlook
打开outlook在windows上只能⽤win32模块了,通过下⾯⽅法可以打开outlook并且创建⼀个空的email
olook = win32com.client.Dispatch("Outlook.Application")
mail = olook.CreateItem()
然后配置邮件的htmlbody和outlook邮件悬停(可以⼿动更改邮件内容,⼿动发送),可以⽤以下⽅法
mail.HTMLBody = body_html
mail.Display(True)
完整代码
下⾯是完整代码,读者修改⼀下excel的路径,就可以⾃⼰去试试啦
# -*- coding: UTF- -*-
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
import win32com.client
import xlwings
def get_excel_date(filename):
'''
获得excel⾥的所有内容,返回list
:param filename: excel路径
:return: list[list[]]
'''
app = xlwings.App(visible=False, add_book=True)
app.display_alerts = False
app.screen_updating = False
wb = app.books.open(filename)
sht = wb.sheets[]
rng = sht.range('A1')
# 把excel⾥的数据读取成 年-⽉-⽇ 时:分:秒的格式
my_date_handler = lambda year, month, day, hour, minute, second, **kwargs: "%04i-%02i-%02i %02i:%02i:%02i" % ( year, month, day, hour, minute, second)
# 取出所有内容,这⾥⽤ig这个变量,是为了庆祝I.G获得LOL S8赛季总冠军
ig = rng.current_region.options(index=False, numbers=int, empty='N/A', dates=my_date_handler)
result = ig.value
wb.close()
app.quit()
return result
if __name__ == '__main__':
olook = win32com.client.Dispatch("Outlook.Application")
mail = olook.CreateItem()
mail.Recipients.Add("3xxx@qq")
mail.Subject = "test report"
body_html = ""
body_html = body_html + '
Hi all:
以下是XXXXX项⽬今天的测试情况:
明天的测试计划:
⽬前的bug:'
body_html = body_html + '
# 这⾥⽤rng 是因为这⼀次rng⽌步8强!
rng_list = get_excel_date("D:\\reports\\Table.xlsx")
# 表头
for tr_list in rng_list[:]:
body_html = body_html + "
"
for td_list in tr_list:
# 这⾥也是奇葩需求,因为要求表头不能换⾏,所以⽤了nowrap
body_html = body_html + '
' + td_list + ''
body_html = body_html + "
"
# 表内容
for tr_list in rng_list[:]:
body_html = body_html + "
"
for td_list in tr_list:
body_html = body_html + "
" + td_list + ""
body_html = body_html + "
"
body_html = body_html + '
'
body_html = body_html + ""
mail.HTMLBody = body_html
mail.Display(True)
[转] Windows下使⽤Python读取Excel表格数据
python读取excel中单元格的内容返回的5种类型
python读取excel,数字都是浮点型,⽇期格式是数字的解决办法
excel⽂件内容: 读取excel: # coding=utf-8 import xlrd import sys reload(sys) sys.setdefaultencoding('utf-8' ...
Python读取Excel数据并根据列名取值
python怎么读入excel⼀直想将⾃⼰接触到的东西梳理⼀遍,可就是迈不出第⼀步,希望从这篇总结开始不要再做⾏动的矮⼈了. 最近测试过程中需要⽤到python读取excel⽤例数据,于是去了解和学习了下xlrd库,这⾥只记录使⽤ ...
Python读取excel中的图⽚
作为Java程序员,Java⾃然是最主要的编程语⾔.但是Java适合完成⼤型项⽬,对于平时⼯作中⼩的⼯
作任务,需要快速完成,易于修改和调试,使⽤Java显得很繁琐,需要进⾏类的设计,打成jar包,出现 ...
python 读取excel数据并将测试结果填⼊Excel
python 读取excel数据并将测试结果填⼊Excel 读取⼀个Excel中的⼀条数据⽤例,请求接⼝,然后返回结果并反填到excel中.过程中会⽣成请求回来的⽂本,当然还会⽣成⼀个xml⽂件.具体 ...
记录:python读取excel⽂件
由于最近⽼是⽤到python读取excel⽂件,所以特意记录⼀下python读取excel⽂件的⼤体框架. 库:xlrd(读),直接pip安装即可.想要写excel⽂件的话,安装xlwd库即可,也是直 ...
利⽤xlrd模块实现Python读取Excel⽂档
# -*- coding: cp936 -*- #python读取excel import xlrd def main(): xls=xlrd.open_workbook("d:\\11.x ...
Python读取excel 数据
随机推荐
数据bus
moo的Hessian总线的数据通信模式⼤致为: Hessian 格式:基于⼆进制格式的⽤于⽹络传输的协议.Hessian格式数据流的是实现
java.io.Serializable接⼝.当两个进程在 ...
带中⽂的路径导致NSURL初始化⼀直为null的问题
⼀.问题描述 在学习Ojective-C过程中,需要读取⽂件中的内容,但发现指针变量url的值⼀直为nil. 代码如下: NSString
*strUrl=@"file:///Users/f ...
LoadRunner 脚本学习 -- 使⽤动态链接库
DLL = Dynamic Link Library DLL最重要的⼀个特点就扩展应⽤程序的特性. 再强⼤的⼯具也有不是万能的,通过调⽤动态库的⽅法极⼤地增强loadrunner的功能.当你在⽤loa ...
Python函数参数的五种类型
之前项⽬需求,需要通过反射获取函数的参数,python中可以通过函数签名(signature)来实现. ⾸先需要了解函数参数的类型,Python的参数类型⼀共有5种:POSITIONAL_OR_KEY ...
RSA Encrypting/Decrypting、RSA+AES Encrypting/Decrypting
catalogue . CryptoAPI介绍 . RSA Encrypting/Decrypting File 1. CryptoAPI介绍 0x1: Cryptography Service Pr ...
[android] 线性布局和布局的组合
/****************2016年4⽉25⽇ 更新******************************/ 知乎:对于开发者来说,Android 的开发者选项⾥有哪些实⽤的功能? 汤涛...
【Java线程安全】锁
Java都有哪些锁? synchronized 和 reentranlock是最常见的,其中前者⼜JVM提供实现,后者有专门对应的urrent包提供:同时后者功能更加丰富. ...
设计模式之策略模式(Strategy)
策略模式将不同算法的逻辑抽象接⼝封装到⼀个类中,通过组合和多态结合的⽅式来进⾏不同算法具体的实现. 作⽤ 策略模式是⼀种定义⼀系列算法的⽅法,Strategy类层次为Context定义了⼀系列的可重⽤ ...
SELinux介绍
SELinux概念 安全加强的Linux,早期的Linux系统安全由系统管理员控制.SELinux就是⼀些安全规则的集合,类似于⼈类⽣活中的法律. DAC:  ⾃由访问控制(以前的linux版本) ...
excel 常⽤法
粘贴格式化数据 数据如下 206190 98604 20991 2807.20 236584 113705 24599 3268.68 272083 128111 29021 3721.33 2487 ...

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。