最近写了个小工具 用于excel转成xml

直接贴代码吧。。

#coding=utf-8
import xlrd
import datetime
import time
import sys
import xml.dom.minidom
import os
print sys.getdefaultencoding()
reload(sys)             #就是这么坑爹,否则下面会报错
sys.setdefaultencoding('utf-8') #py默认是ascii。。要设成utf8#excel中 数据格式如下:
# UID         第四天
# 1579880025  10:00-13:30
# 1677982825  10:00-12:00
# 1704410718  10:00-12:00
# 83713892    10:00-12:00
# 1546551561  10:00-12:00
# 1298790776  10:00-12:00def open_excel(file):try:data = xlrd.open_workbook(file)  #xlrd 操作excel的外部库return dataexcept Exception, e: print str(e)bgntm = '2017-05-18_'
def get_time_t(stime):stime = bgntm + stime + ':00'# return time.strptime(stime, '%Y-%m-%d %H:%M:%S')      #将时间转成时间戳return stimedef excel_table_byindex(file, colnnameindex=0, by_index=0): data = open_excel(file)         #打开exceltable = data.sheets()[by_index]nrows = table.nrows             ncols = table.ncolsdoc = xml.dom.minidom.Document()    #打开xml对象xmain = doc.createElement('main')  doc.appendChild(xmain)  for nrow in range(0, nrows):        #遍历每一行if nrow == 0:continueuid = table.cell(nrow, 0).value     #取值..第一列item = doc.createElement('%d'%uid)  #生成节点stime = table.cell(nrow, 1).value   #第二列的值stime = stime.strip()       #去除空格..excel数据里 经常会无意有蛋疼的多余空格listT = stime.split('-')          #按 -分割字符串  # sbgn = 'bgn = %d'%time.mktime(get_time_t(listT[0]))sbgn = 'bgn = '+get_time_t(listT[0])print 'uid=%d'%uidprint 'bgn:'+sbgnsend = 'end = '+get_time_t(listT[1])# send = 'end = %d'%time.mktime(get_time_t(listT[1]))print 'end:'+sendexxbgn = doc.createTextNode(sbgn)   #纯文本节点exxend = doc.createTextNode(send)   item.appendChild(exxbgn)            #加入树中item.appendChild(exxend)# ebgn = doc.createElement('bgn')# eend = doc.createElement('bgn')# item.appendChild(ebgn)# item.appendChild(eend)# item.setAttribute('bgn', '%d'%time.mktime(get_time_t(listT[0]))) #设置节点属性# item.setAttribute('end', '%d'%time.mktime(get_time_t(listT[1])))# for lt in listT:# print time.mktime(get_time_t(lt))xmain.appendChild(item) f = open('G:/testPro/py/exceltoxml/day.xml', 'w')        #xml文件输出路径f.write(doc.toprettyxml())f.close()excel_table_byindex('G:/testPro/py/exceltoxml/day.xlsx')        #excel文件路径

关于xlrd 可以在cmd里 pip install xlrd来安装

转载于:https://www.cnblogs.com/yylingyao/p/6872246.html

python excel转xml相关推荐

  1. python excel转xml 用例_测试用例Excel转XML格式教程

    运行环境: Python版本:Python2.7.15 第三方库:pywin32 Excel版本:Excel2016 1.安装Python2.7.15 1)下载Python安装包 进入Python官网 ...

  2. python 读取excel格式xml,读取xml格式的xls文件、解析其中数据

    1.python 读取excel格式xml,解析其中数据 当excel文件的格式是xml的时候,window系统是可以正常打开的,但是使用pandas直接读取则会报错,原因就是现在已经是xml文件了, ...

  3. python excel 内容写入html,PYTHON读取EXCEL内容再转变成HTML添加到OUTLOOK中

    需求 读取excel里的表格里的内容,然后打开本机的outlook.把excel里的内容添加到正文里,注意.这里是要添加到正文!正文!正文!而不是添加到附件里 设计思路 1.excel处理 打开exc ...

  4. 超实用,精心整理了34个Python+Excel+Word+PDF自动化库!

    本次内容涵盖了Excel.Word.PPT.ODF.PDF.邮件.微信.文件处理等所有能在办公场景实现自动化的库,希望能够对大家有所帮助. Python Excel自动化库 1.xlwings 库 官 ...

  5. python excel文件转为csv文件_python实现将excel文件转化成CSV格式

    python实现将excel文件转化成CSV格式 如下所示: import pandas as pd data = pd.read_excel('123.xls','Sheet1',index_col ...

  6. TestLink1.9.3测试用例:Excel转换XML工具一

    最近在整理测试用例,所以想找一个合适的工具来完成对测试需求.测试用例的管理.对比了一翻,发现开源工具中扩展比较好的还属TestLink,而且还可以与JIRA进行对接,这样就引起了我更大的兴趣.加上之前 ...

  7. TestLink学习七:TestLink测试用例Excel转换XML工具

    TestLink对于测试用例的管理来说,是蛮强大的,但是在导入导出这块,功能有点弱,本文针对测试用例的导入,转载了一个Excel转换成xml工具. 1.根据到处的测试用例xml,定义一下我的Excel ...

  8. python处理excel表格实例-通过实例学习Python Excel操作

    这篇文章主要介绍了通过实例学习Python Excel操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 1.python 读取Excel # -* ...

  9. 怎么用python创建文件-如何用Python创建生成xml文档文件的方法

    用如何用Python完成创建生成xml文档文件的工作. 需要用到的方法:from xml.dom.minidom import Document,想必大家很熟悉这个操作了,接下来就用python 创建 ...

最新文章

  1. k8s 带你一步步 创建用户账号(User Account)
  2. UltraEdit正则表达式介绍及实例
  3. 网站开发之鼠标悬停简单特效实现(四)
  4. Scrayp-集成scrapy_redis和bloomfilter实现增量
  5. SAP Spartacus的登录页面的用户名显示逻辑
  6. 记录今天登录oracle时遇到的一个小问题--不能登录
  7. 江苏省计算机等级知识,江苏省计算机二级考试基础知识_计算机基础练习题
  8. javascript学习系列(22):数组中的reduceRight法
  9. java中bean的作用域有哪些_深入了解Spring中Bean的作用域和生命周期
  10. Linux网络编程之epoll模型
  11. 零信任在智慧城市典型场景中的融合应用
  12. maven的资源过滤filters
  13. C措辞教程第一章: C措辞概论 (5)
  14. Win7 64b的VS2015 如何使用nmake成功编译detour express 3.0-error2202 警告被视为错误 - 没有生成“object”文件
  15. 全媒舍:活动策划的几个要点与常用做法
  16. 使用Python对一张图像进行高斯模糊
  17. window本地代理及共享端口445修改
  18. 网络工程师加入德云社说相声,他还骑摩托车环球旅行!!
  19. Docker run 容器处于created状态问题
  20. java 接口,接口的特性,接口实现多态,面向接口编程

热门文章

  1. db_host 直接用ip地址吗_新买的粉扑能直接用吗?使用粉扑要注意什么?
  2. python中bar是什么_python-如何添加一个单独的colobar,它将显示来...
  3. hive 查看 job 日志_日均TB级数据,携程支付统一日志框架
  4. FastDFS多tracker配置
  5. Mysql删除数据时出现执行很慢并且删除失败--线程堵塞
  6. 人工智能为失散家人寻找“回家路”
  7. Deepin Linux 15.10 发布
  8. SpringBoot(十四)_springboot使用内置定时任务Scheduled的使用(一)
  9. 浪潮科大讯飞Altera用OpenCL实现FPGA深度学习语音识别加速方案
  10. MongoDB的C#驱动基本使用