#!/usr/bin/python # _*_ coding:utf-8 _*_ import pymysql import xlsxwriter #打开数据库链接 conn = pymysql.connect(host = '10.61.3.181',user = 'zabbix',password = 'zabbix',db = 'zabbix',port =3307,charset = 'utf8') #使用cursor()方法获取操作游标 #将属性cursor设置为字典,默认为元组 #cursor = conn.cursor() #默认为元组 cursor = conn.cursor(cursor=pymysql.cursors.DictCursor) #将属性cursor设置为字典 #定义查询语句 sql = "select * from hosts" #执行SQL,返回受影响的行数,返回值为行数 row = cursor.execute(sql) print(row) #获取查询结果的第一行数据 row_1 = cursor.fetchone() print("打印获取查询结果的第一行数据:") print(row_1) #获取查询结果的前n行数据 row_2 = cursor.fetchmany(3) print("打印获取查询结果的前n行数据:") print(row_2) print("打印获取查询结果所有值:") #创建文件 work_book = xlsxwriter.Workbook('4G路由器信息.xlsx') #创建一个sheet work_book1 = work_book.add_worksheet() headings = ["ip地址","主机名"] #定义两个列表IP,name ip = [] name = [] #获取所有查询结果 row_3 = cursor.fetchall() for i in range(len(row_3)): # print(row_3[i]) d = row_3[i] ip.append(d['host']) name.append(d['name']) # print(ip,name) data = [ip,name] #写入标题 work_book1.write_row('A1',headings) #写入数据(按照列写) work_book1.write_column('A2',data[0]) work_book1.write_column('B2',data[1]) #关闭excel 文件 work_book.close() #提交数据 conn.commit() #关闭游标 cursor.close() #关闭数据库链接 conn.close()