1. 程式人生 > 其它 >python:生成半年內的巡檢日報execl

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)

執行程式,建立每天的巡檢日報