1. #-*- coding:utf-8 -*-
  2. # 处理 excel 中的 area 为 Mysql insert 语句
  3. import xlrd, json, codecs, os
  4.  
  5. # data = xlrd.open_workbook('101.xls')
  6. data = xlrd.open_workbook('C:\Users\Administrator\Desktop\changanyiyuan.xlsx')
  7. # table = data.sheets()[0]
  8. table = data.sheet_by_index(0)
  9.  
  10. # try
  11. hospitalJson = codecs.open('C:\Users\Administrator\Desktop\changanyiyuan.json','a+','utf-8')
  12. hospitalJson.truncate(0)
  13. hospitalJson.write('[') # 先写入数组头
  14.  
  15. hospitalJsonInsert = codecs.open('C:\Users\Administrator\Desktop\hospitalJsonInsert.json','a+','utf-8')
  16. hospitalJsonInsert.truncate(0)
  17. hospitalJsonInsert.write('insert into department(hospital_id, pid, name, rank, create_time, modify_time) values')
  18.  
  19. # 取出表格的第一行作为 json 的 key (javascript object notation)
  20. attribute = table.row_values(0)
  21.  
  22. # 除第一行以外的数据放入一个 dict
  23. jsonAll = []
  24.  
  25. contents = {}
  26. for index_r in range(1,table.nrows):
  27. for index_c in range(table.ncols):
  28. contents[attribute[index_c]] = table.cell(index_r, index_c).value # cell 单元格的一个属性并非方法
  29. # print contents
  30. hospitalJson.write("%s,\n" %json.dumps(contents,ensure_ascii=False,sort_keys=True, indent=4))
  31. hospitalJsonInsert.write('(2265, -1, \'%s\' ,%d, now(), now()),'%(table.cell(index_r, 3).value, table.cell(index_r, 5).value))
  32. # jsonAll.append(json.dumps(contents,ensure_ascii=False,sort_keys=True, indent=4))
  33.  
  34. # print hospitalJson.tell()
  35. # hospitalJson.seek(0)
  36. # print hospitalJson.tell()
  37.  
  38. hospitalJson.seek(-2, os.SEEK_END)
  39. hospitalJson.truncate()
  40. hospitalJson.write(']') # 数组结束
  41.  
  42. # hospitalJson.write(json.dumps(contents,ensure_ascii=False,sort_keys=True, indent=4)) # 少了 ensure_ascii=False 参数就不能写中文进文件?
  43. hospitalJsonInsert.seek(-1, os.SEEK_END)
  44. hospitalJsonInsert.truncate()
  45. hospitalJsonInsert.write(';')
  46.  
  47. # hospitalJson.write("%s" % jsonAll)
  48. hospitalJson.close()
  49. hospitalJsonInsert.close()
  50.  
  51. # (`id`, `hospital_id`, `pid`, `name`, `rank`, `create_time`, `modify_time`)
  52. # 写成 mysql 语句
  53. # 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 语句的更多相关文章

  1. 【POI word】使用POI实现对Word的读取以及生成

    项目结构如下: 那第一部分:先是读取Word文档 package com.it.WordTest; import java.io.FileInputStream; import java.io.Fil ...

  2. 利用http协议使用普通的网站虚拟主机+安信可A6C GPRS模块实现对stm32的远程升级

    步骤: 1.生成bin文件并将bin文件放到虚拟主机目录内 2.做一个php的页面分块读取该bin文件,以asc字符echo出来,并标记好头尾长度和校验. 3.GPRS协议栈连接主机路径,收到内容,将 ...

  3. excel 里面拼接 MySQL insert 语句

    ="('"&A2&"',"&" '"&B2&"','"&C2&& ...

  4. python 利用三方的xlrd模块读取excel文件,处理合并单元格

      目的: python能使用xlrd模块实现对Excel数据的读取,且按照想要的输出形式.  总体思路: (1)要想实现对Excel数据的读取,需要用到第三方应用,直接应用. (2)实际操作时候和我 ...

  5. 通过脚本实现对web的健康检查

    前面的文章中(https://www.cnblogs.com/zyxnhr/p/10707932.html),通过nginx的第三方模块实现对web端的一个监控,现在通过一个脚本实现对第三方的监控 脚 ...

  6. python读写Excel文件--使用xlrd模块读取,xlwt模块写入

    一.安装xlrd模块和xlwt模块 1. 下载xlrd模块和xlwt模块 到python官网http://pypi.python.org/pypi/xlrd下载模块.下载的文件例如:xlrd-0.9. ...

  7. $ 用python处理Excel文档(1)——用xlrd模块读取xls/xlsx文档

    本文主要介绍xlrd模块读取Excel文档的基本用法,并以一个GDP数据的文档为例来进行操作. 1. 准备工作: 1. 安装xlrd:pip install xlrd 2. 准备数据集:从网上找到的1 ...

  8. 利用xlrd模块实现Python读取Excel文档

    # -*- coding: cp936 -*- #python读取excel import xlrd def main(): xls=xlrd.open_workbook("d:\\11.x ...

  9. Python xlrd模块读取Excel表中的数据

    1.xlrd库的安装 直接使用pip工具进行安装(当然也可以使用pycharmIDE进行安装,这里就不详述了) pip install xlrd 2.xlrd模块的一些常用命令 ①打开excel文件并 ...

随机推荐

  1. Linux系统性能和使用活动监控工具 sysstat

    Sysstat是一个非常方便的工具,它带有众多的系统资源监控工具,用于监控系统的性能和使用情况.我们在日常使用的工具中有相当一部分是来自sysstat工具包的.同时,它还提供了一种使用cron表达式来 ...

  2. C# using 三种使用方式

    http://www.cnblogs.com/fashui/archive/2011/09/29/2195061.html 1.using指令. using 命名空间名字.例如: using Syst ...

  3. Linux 服务器的网络配置 - 1. 查看 Linux 服务器的网络连接

    1. 查看 Linux 服务器的网络连接 1)查看主机名: liuqian@ubuntu:~$ hostname ubuntu 2)查看 ip 地址: 用 ifconfig 即可,这里介绍命令组合用法 ...

  4. windows Server 2008 IE增强的安全配置关闭方法

    解决方法 开始->管理工具->服务器管理器

  5. PreparedStatement解决sql注入问题

    总结 PreparedStatement解决sql注入问题 :sql中使用?做占位符 2.得到PreparedStatement对象 PreparedStatement pst=conn.prepar ...

  6. windows下PHP5.5.6+Apache2.4.7配置

    本文主要阐述在windows8及win8.1 环境下搭建PHP5.5.6+Apache2.4.7. 1.软件准备 apache 2.4.7:http://pan.baidu.com/s/1iUPif ...

  7. 关于thinkphp 中的字段自动检查机制

    在thinkphp中有很好用的自动检查机制$_validate() 但是必须与create接收配合使用 可以很方便的帮助我们去判断 namespace Home\Model;use Think\Mod ...

  8. 使用View为Data Source的Form开发要点

    (Data Source为View) 要点一:创建View的SQL语法 View的SQL里必须指定Form里唯一一个对其新增.修改.删除的基本表及其主键,其它表为辅助信息表,其字段仅用来在Form里显 ...

  9. CSS+HTML网页设计与布局(学习笔记1)

    1.在宽度未知时,使div块居中,可以添加以下属性: display:table;margin:0 auto;

  10. LESS 学习记录(简单入门)

    什么是 LESS LESS是一种动态样式语言,属于 CSS 预处理语言的一种.它使用类似 CSS 的语法,但是 赋予了动态语言的特性,比如变量.继承.运算.函数等,方便 CSS 的编写和维护. 使用 ...