python:生成半年内的巡检日报execl
问题描述:使用脚本来生成半年内的数据,数据内容大概为每天的数据库巡检日报,临时抱佛脚。数据不可能是真实的,都是随机生成的,想要使用真实的数据后面直连操作系统或者数据库。后期可以慢慢实现自动化生成每天的数据库巡检日报。
程序代码
# hzh 每天进步一点点
# 2022/5/23 18:22
import xlwt
import faker
import random
import datetime
def get_date_iter(start_date, end_date):
"""
获取指定时间段内的日期
:param start_date: 起始时间 --> str YYYYmmdd
:param end_date: 结束时间 --> str YYYYmmdd
:return: iter
"""
dt = datetime.datetime.strptime(start_date, '%Y%m%d')
date = start_date[:]
yield date
while date < end_date:
dt = dt + datetime.timedelta(days=1)
date = dt.strftime("%Y%m%d")
yield date def creat_exexel_filr(filename,xls,db_system,operatos,uptime): #文件名,部门名
wb=xlwt.Workbook(filename) # 将传入的文件名,创建为新的工作簿
sheet=wb.add_sheet("sheet") # 在工作簿中创建表
head_data=['时间','数据库系统','操作系统','内存使用率','磁盘使用率','CPU使用率','SWAP使用率','uptime','主从状态同步延迟','当前连接数',
'InnoDB buffer pool pages total','Buffer pool utilization','check_dba']
for head in head_data:# 写入头部信息
sheet.write(0,head_data.index(head),head)
for i in range(1, random.randint(2,2)): #循环1次,右边是闭区间
sheet.write(i,0,xls)
sheet.write(i,1,db_system)
sheet.write(i,2,operatos)
sheet.write(i,3,"{}%".format(random.uniform(40,95)))
sheet.write(i,4,"{}%".format(random.randint(30,60)))
sheet.write(i,5,"{}%".format(random.randint(30,90)))
sheet.write(i,6,"{}%".format(random.uniform(30,88)))
sheet.write(i,7,uptime+1)
sheet.write(i,8,random.choice(['同步','不同步']))
sheet.write(i,9,random.choice([200,300,400,500,600]))
sheet.write(i,10,random.choice([200,300,400,500,600]))
sheet.write(i,11,"{}M".format(random.randint(4096,8192)))
sheet.write(i,12, random.choice(['张三','李四']))
wb.save("xls_create/"+filename) def create(start_date, end_date):
xls_all = [i for i in get_date_iter(start_date, end_date)]
for xls in xls_all:
xls_name="{}.xls".format(xls)
creat_exexel_filr(xls_name,xls,'CRM系统数据库','red-hat 7.9',123)
print(xls_name,"新建完成") create('20220501','20220523')
print('表格已经全部创建完成')
# result = get_date_iter('20220501','20220523')
# for i in result:
# print(i)
运行程序,创建每天的巡检日报

python:生成半年内的巡检日报execl的更多相关文章
- python常用数据类型内置方法介绍
熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...
- 【python】【转】Python生成随机数的方法
如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与random模块中最常用的几个函数的关系,希望你会有所收获,以下就是这篇文 ...
- Python生成随机数的方法
这篇文章主要介绍了Python生成随机数的方法,有需要的朋友可以参考一下 如果你对在Python生成随机数与random模块中最常用的几个函数的关系与不懂之处,下面的文章就是对Python生成随机数与 ...
- python字符串常用内置方法
python字符串常用内置方法 定义: 字符串是一个有序的字符的集合,用与存储和表示基本的文本信息. python中引号中间包含的就是字符串. # s1='hello world' # s2=&quo ...
- python学习交流 - 内置函数使用方法和应用举例
内置函数 python提供了68个内置函数,在使用过程中用户不再需要定义函数来实现内置函数支持的功能.更重要的是内置函数的算法是经过python作者优化的,并且部分是使用c语言实现,通常来说使用内置函 ...
- python常用的内置函数哈哈
python常用的内置函数集合做一个归类用的时候可以查找 abs 返回数字x的绝对值或者x的摸 all (iterable)对于可迭代的对象iterable中所有元素x都有bool(x)为true,就 ...
- python常用的内置函数
python常用的内置函数集合做一个归类用的时候可以查找- abs 返回数字x的绝对值或者x的摸 - all (iterable)对于可迭代的对象iterable中所有元素x都有bool(x)为tru ...
- Python的常用内置函数介绍
Python的常用内置函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.取绝对值(abs) #!/usr/bin/env python #_*_coding:utf-8_ ...
- Python生成随机数组的方法小结
Python生成随机数组的方法小结 本文实例讲述了Python生成随机数组的方法.分享给大家供大家参考,具体如下: 研究排序问题的时候常常需要生成随机数组来验证自己排序算法的正确性和性能,今天把Pyt ...
- Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式
Python生成文本格式的excel\xlwt生成文本格式的excel\Python设置excel单元格格式为文本\Python excel xlwt 文本格式 解决: xlwt 中设置单元格样式主要 ...
随机推荐
- laravel5.5 数据查询记录
laravel5.5版本数据查询 基于 prettus/l5-repository 插件 首先安装好 prettus/l5-repository插件 配置相关参数 1 根据条件查询数据总数 publi ...
- openwrt扩容
方法二.三记得先使用Linux系统打开 GParted -- Download 方法三偏移地址获取: 1. 运行的openwrt安装losetup 2. 安装完毕后执行:losetup 获取偏移地址. ...
- Modelsim中的Verilog语言使用
一.建立工程 1.在建立工程(project)前,先建立一个工作库(library),一般将这个 library 命名为 work.尤其是第一次运行 modelsim 时,是没有这个"wor ...
- 【NAS使用心得】使用Synology Photos管理照片
整理方式 1.本地没有整理或只按年份整理的:时间线模式下直接上传,让软件自己按照片创建时间生成文件夹:有按年份生成相册需求的,可以用"选择照片以创建相册"功能,找到年份文件夹,全选 ...
- 基于C语言的小学四则运算出题器
一.实验目的: 1.帮助老师产出每周随机的300道含有两个运算符的四则运算,. 2.每次题目的产出均为随机,增强同学的四则运算能力. 二.实验环境: Visual C++ 三.实验内容: 1.实现随机 ...
- Day06 ServletContext
ServletContext的介绍与用法 1.什么是ServletContext 1.1 SevrvletContext:Servlet上下文 服务器会为每一个Web工程创建一个ServletCont ...
- logrotate linux 系统日志管理
logrotatelogrotate简介 logrorare一定程度上可以简化对会生成大量日志文件的系统的管理.logrotate可以实现自动轮替.删除.压缩和mail日志的功能. 执行命令logro ...
- Servlet's characters of get and post
Tomcat默认是使用ISO8859-1来解码的,ISO8859-1是不支持中文的. 1.post请求解决乱码原因: 服务器不知道按哪种编码来处理HTML等文件来响应给浏览器的,所以处理post请求时 ...
- 更新Vue-cli4与Eslint插件自动保存
Vue-cli更新 此更新为Vue-cli3更新为4,可使用node来查看本机的安装版本,vue -V,此版本(cli4)需要node v8.9 或更高版本 (推荐 v10 以上),查看node版本可 ...
- ADOStoredProc动态调用存储过程
有些用ADOStoredProc进行操作时,要动态创建输入输出参数,一定要用 ADOStoredProc1.Parameters.Refresh;将参数进行刷新一下.