excel导出csv
2015-06-15 15:50
441 查看
脚本:python
插件:xlrd
约定:前三行为配置信息,依次为变量名、数据类型、描述信息(这些配置主要是为了以后批量生成代码时使用)
脚本代码如下:
当前脚本只解析excel目录下的文件,
当然你也可以通过命令行参数,来解析特定的文件夹或文件:
插件:xlrd
约定:前三行为配置信息,依次为变量名、数据类型、描述信息(这些配置主要是为了以后批量生成代码时使用)
脚本代码如下:
#!-*- coding:utf-8 -*- # # excel转csv # import xlrd,csv,sys,os,shutil class E2CParser(object): """docstring for ClassName""" def __init__(self, excelfile): super(E2CParser, self).__init__() self.filename = excelfile def parser(self): print "开始解析 : %s" % self.filename if not os.path.exists('csv'): os.mkdir('csv') pass workbook = xlrd.open_workbook(self.filename) sheet = workbook.sheet_by_index(0) ext = os.path.splitext( os.path.basename(self.filename) ) # print ext with open('./csv/{}.csv'.format(ext[0]), 'wb') as f: writer = csv.writer(f,delimiter="\t") for row in range(3,sheet.nrows): out=[] for index,cell in enumerate(sheet.row_values(row)): __type__ = sheet.cell(2,index).value.lower() try: if __type__ == 'int': out.append( unicode( int(cell) ).encode('utf-8') ) elif __type__ == 'array_int' and type(value) is float: out.append( unicode( int(cell) ).encode('utf-8') ) else: out.append(unicode(cell).encode('utf-8')) except Exception,e: print "(%d , %d) data is error!" % (row+1,index+1) if __type__ == 'int' or __type__ == 'array_int': out.append( unicode( 0 ).encode('utf-8') ) else: out.append(unicode('-1').encode('utf-8')) writer.writerow(out) print "Parser Success!" # # 遍历目录下的所有带有excel后缀的文件 # def readExcel(path): path = os.path.normpath(path) # print path if os.path.exists(path): if os.path.isdir(path): for _file in os.listdir(path): readExcel(os.path.join(path,_file)) elif os.path.isfile(path): ext = os.path.splitext(path) if ext[1] in ['.xls','.xlsx']: obj = E2CParser(path) obj.parser() else: print "不存在路径 : "+path if __name__ == '__main__': if os.path.exists("csv"): shutil.rmtree("csv") readExcel('excel')
当前脚本只解析excel目录下的文件,
readExcel('excel')
当然你也可以通过命令行参数,来解析特定的文件夹或文件:
opts,args = getopt.getopt(args, shortopts, longopts = [])这样你就取到了参数
相关文章推荐
- mysql load data 导出、导入 csv
- 使用Python生成Excel格式的图片
- Excel 曝出 Power Query 安全漏洞,1.2 亿用户易受远程 DDE 攻击
- excel vba 限制工作表的滚动区域代码
- excel vba 高亮显示当前行代码
- SQL 导入导出Excel数据的语句
- 文本、Excel、Access数据导入SQL Server2000的方法
- C#导出数据到CSV文件的通用类实例
- C#导出数据到Excel文件的方法
- Vbscript生成Excel报表的常用操作总结
- C#基于NPOI生成具有精确列宽行高的Excel文件的方法
- 总提示[Microsoft][ODBC Excel Driver] 数值字段溢出官方解决方法
- C#将Sql数据保存到Excel文件中的方法
- VC6.0实现读取Excel数据的方法
- 把excel表格里的数据导入sql数据库的两种方法
- access dbase excel foxpro 数据库浏览器V3.1版 下载
- C#实现把txt文本数据快速读取到excel中
- C#自定义导出数据到Excel的类实例
- php操作csv文件代码实例汇总
- php读取csv文件并输出的方法