直接做记录。遗留问题:文件扩展名写xlsx 后,本地打不开。
#coding=utf-8
import xlwt
import MySQLdb
import sys
reload(sys)
sys.setdefaultencoding('utf8')
def get_data(sql):
conn = MySQLdb.connect(add.to_dbhost,add.to_user,add.to_passd,add.dbname,charset="utf8")
cur = conn.cursor()
cur.execute(sql)
results = cur.fetchall() # 搜取所有结果
cur.close()
conn.close()
return results
def write_data_to_excel(filename,sql):
results =get_data(sql)
workbook = xlwt.Workbook()
sheet = workbook.add_sheet('sheet_name',cell_overwrite_ok=True)
#写入字段名称
#for field in range(0,len(fields)):
#sheet.write(0,field,u'%s'%fields[field][0])
# 写入数据段信息
row = 1
col = 0
for row in range(1,len(results)+1):
for col in range(0,len(results[0])):
sheet.write(row,col,u'%s'%results[row-1][col])
workbook.save(filename)
if __name__ == "__main__":
sql = "SELECT * FROM %s" %add.tablename
write_data_to_excel(r'E:\yu.xls',sql)