python 写了一个批量拉取文件进excel文档
路径如:
C:\\Users\\huaqi\\Desktop\\信息收集
“信息收集”目录下有以下子目录:
[技术,客服,运营,行政]
“技术”目录下有以下子文件:
[小白.txt,小红.txt,小黑.txt]
"客服"目录下有以下子文件
[小水.txt,小元.txt,小海.txt]
“运营”目录下无文件.
“行政”目录下有以下子文件:
[小玲.txt,小飞.txt]
.txt文本是通过bat文件生成 (如需要私聊)
import os import xlsxwriter workbook = xlsxwriter.Workbook('C:\\Users\\huqqi\\Desktop\\test.xlsx') #生成xlsx文档 worksheet = workbook.add_worksheet('demo') bold = workbook.add_format({'bold':True}) worksheet.set_column('A:A',20)#设置宽度 worksheet.set_column("B:B",15)#设置宽度 worksheet.set_column("F:F",16)#设置宽度 worksheet.set_column("G:G",25)#设置宽度 l = ["A",'B','C','D','E','F','G','H','I'] worksheet.write('A1','电脑型号',bold) worksheet.write('B1','制造商',bold) worksheet.write('C1','SN序列号',bold) worksheet.write('D1','姓名',bold) worksheet.write('E1','部门',bold) worksheet.write('F1','资产编号',bold) worksheet.write('G1','处理器',bold) worksheet.write('H1','内存容量',bold) worksheet.write('I1','硬盘容量',bold) #打开文档 def open_file(data_path): data_list = [] with open(data_path,"r") as f1: for line in f1: data = line.strip() #去掉首尾空白 if len(data) != 0: #去掉空行 data = line[:-1] #切片除去最后一个字符(换行符) #print(data.split(":")[1]) #获取数据 0表示key 1表示value data =data.split(":")[1] data_list.append(data) #print(data_list[0:9]) return data_list[0:9] #返回单个文件的数据列表 #写入xlsx 单个数据写入 wc表示从第一行开始 1 def write_xlsx(data,wc): for i in range(len(data)): #print(data[i]) a = l[i]+str(i+2) # worksheet.write(l[i]+str(wc+1),data[i]) #循环目录下的文件 def loop_file(data_path): file_list = [] path = os.listdir(data_path) #建立当前路径下的文件列表 如硬件信息收集下的列表[技术,运营,客服,行政] for i in path: sec_path_file = os.listdir(data_path+"\\"+i) # for j in sec_path_file: if os.path.exists(data_path+"\\"+i+"\\"+j): #判断是否为空文件 file_list.append(data_path+"\\"+i+"\\"+j) return file_list #data_file = loop_file("C:\\Users\\huaqi\\Desktop\\信息收集") def main(): #主函数 data_path = "C:\\Users\\huaqi\\Desktop\\信息收集" #收集信息目录 count = 1 for eve_path in loop_file(data_path): #每次循环拉取的文件 write_xlsx(open_file(eve_path),count) count += 1 workbook.close() main()
原谅我这一生不羁放纵爱自由