当前位置:Gxlcms > 数据库问题 > 使用 xlrd 模块实现对excel 的读取、excel转json 、excel 转 mysql insert 语句

使用 xlrd 模块实现对excel 的读取、excel转json 、excel 转 mysql insert 语句

时间:2021-07-01 10:21:17 帮助过:6人阅读

-*- coding:utf-8 -*- # 处理 excel 中的 area 为 Mysql insert 语句 import xlrd, json, codecs, os # data = xlrd.open_workbook(‘101.xls‘) data = xlrd.open_workbook(C:\Users\Administrator\Desktop\changanyiyuan.xlsx) # table = data.sheets()[0] table = data.sheet_by_index(0) # try hospitalJson = codecs.open(C:\Users\Administrator\Desktop\changanyiyuan.json,a+,utf-8) hospitalJson.truncate(0) hospitalJson.write([) # 先写入数组头 hospitalJsonInsert = codecs.open(C:\Users\Administrator\Desktop\hospitalJsonInsert.json,a+,utf-8) hospitalJsonInsert.truncate(0) hospitalJsonInsert.write(insert into department(hospital_id, pid, name, rank, create_time, modify_time) values) # 取出表格的第一行作为 json 的 key (javascript object notation) attribute = table.row_values(0) # 除第一行以外的数据放入一个 dict jsonAll = [] contents = {} for index_r in range(1,table.nrows): for index_c in range(table.ncols): contents[attribute[index_c]] = table.cell(index_r, index_c).value # cell 单元格的一个属性并非方法 # print contents hospitalJson.write("%s,\n" %json.dumps(contents,ensure_ascii=False,sort_keys=True, indent=4)) hospitalJsonInsert.write((2265, -1, \‘%s\‘ ,%d, now(), now()),%(table.cell(index_r, 3).value, table.cell(index_r, 5).value)) # jsonAll.append(json.dumps(contents,ensure_ascii=False,sort_keys=True, indent=4)) # print hospitalJson.tell() # hospitalJson.seek(0) # print hospitalJson.tell() hospitalJson.seek(-2, os.SEEK_END) hospitalJson.truncate() hospitalJson.write(]) # 数组结束 # hospitalJson.write(json.dumps(contents,ensure_ascii=False,sort_keys=True, indent=4)) # 少了 ensure_ascii=False 参数就不能写中文进文件? hospitalJsonInsert.seek(-1, os.SEEK_END) hospitalJsonInsert.truncate() hospitalJsonInsert.write(;) # hospitalJson.write("%s" % jsonAll) hospitalJson.close() hospitalJsonInsert.close() # (`id`, `hospital_id`, `pid`, `name`, `rank`, `create_time`, `modify_time`) # 写成 mysql 语句 # hospitalJsonInsert.write(‘( 2265, -1, \‘%s\‘ ,%s, now(), now())‘%(table.cell(index_r, 3), table.cell(index_r, 5)))

 

使用 xlrd 模块实现对excel 的读取、excel转json 、excel 转 mysql insert 语句

标签:

人气教程排行