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',)#设置宽度
worksheet.set_column("B:B",)#设置宽度
worksheet.set_column("F:F",)#设置宽度
worksheet.set_column("G:G",)#设置宽度 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) != : #去掉空行
data = line[:-] #切片除去最后一个字符(换行符)
#print(data.split(":")[]) #获取数据 0表示key 1表示value
data =data.split(":")[]
data_list.append(data)
#print(data_list[:])
return data_list[:] #返回单个文件的数据列表 #写入xlsx 单个数据写入 wc表示从第一行开始
def write_xlsx(data,wc):
for i in range(len(data)):
#print(data[i])
a = l[i]+str(i+) #
worksheet.write(l[i]+str(wc+),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 =
for eve_path in loop_file(data_path): #每次循环拉取的文件
write_xlsx(open_file(eve_path),count)
count +=
workbook.close()
main()
python 写了一个批量拉取文件进excel文档的更多相关文章
- Python 写了一个批量生成文件夹和批量重命名的工具
Python 写了一个批量生成文件夹和批量重命名的工具 目录 Python 写了一个批量生成文件夹和批量重命名的工具 演示 功能 1. 可以读取excel内容,使用excel单元格内容进行新建文件夹, ...
- 1、关于python第三方工具操作xls和xlsx格式的excel文档选型的吐血经历
首先,最近看了python的一本书,其中第7章是关于文章操作的,就计划把python操作excel,word,txt,xml,html,json等格式的文档做个总结,并实现一些功能,但是,第一步就要把 ...
- Chimm.Excel —— 使用Java 操作 excel 模板文件生成 excel 文档
Chimm.Excel -- 设置模板,填充数据,就完事儿了~ _____ _ _ _____ _ / __ \ | (_) | ___| | | | / \/ |__ _ _ __ ___ _ __ ...
- 初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助
初步学习nodejs,业余用node写个一个自动创建目录和文件的小脚本,希望对需要的人有所帮助,如果有bug或者更好的优化方案,也请批评与指正,谢谢,代码如下: var fs = require('f ...
- 我最近用Python写了一个算法,不需要写任何规则就能自动识别一个网页的内容
我最近用Python写了一个算法,不需要写任何规则就能自动识别一个网页的内容,目前测试了300多个新闻网站的新闻页,都能准确识别
- 用Python写了一个postgresql函数,感觉很爽
用Python写了一个postgresql函数,感觉很爽 CREATE LANGUAGE plpythonu; postgresql函数 CREATE OR REPLACE FUNCTION myfu ...
- 可以在命令行直接使用密码来进行远程连接和远程拉取文件的命令:sshpass
应用范围:可以在命令行直接使用密码来进行远程连接和远程拉取文件. 使用前提:对于未连接过的主机.而又不输入yes进行确认,需要进行sshd服务的优化: # vim /etc/ssh/ssh_con ...
- 阿里云视频点播之URL批量拉取上传(调整为多个视频上传)
项目引入阿里云视频点播PHP-SDK 背景:2021年乐视云的点播将停止提供服务,项目决定选择选用阿里云的视频的点播.在上线前,需要将之前的视频提前导入资源库,URLS方式拉取是比较方便的,对编辑同事 ...
- $用python处理Excel文档(2)——用xlsxwriter模块写xls/xlsx文档
Refer:<python自动化运维:技术与最佳实践> 更多用法参考xlsxwriter官方文档:http://xlsxwriter.readthedocs.io/ 本文主要总结一下如何使 ...
随机推荐
- 【转】Java集合间的相互转换
下面代码演示了List<-->数组.List<-->Set.数组<-->Set.Map将键转化为Set.Map将值转化为Set.Map将值转化为List等集合常用转 ...
- PlayFramework的安装和配置以及向eclipse导入项目工程
一.Play的安装和配置 1.首先去官网下载Play的包并将其解压 我下的是playframework2.2.1 2.配置play的环境变量方便使用 3.打开cmd运行play 输入play he ...
- windows 下面的grep awk 命令
windows 下面的grep awk 命令 grep 学习了:http://blog.csdn.net/chengfans/article/details/53784936 awk学习了:http: ...
- Android 提示: The connection to adb is down, and a severe error has occured.
今天早上打开Eclipse,一直提示 The connection to adb is down, and a severe error has occured,无法执行程序.重新启动Eclipse. ...
- github如何多人开发一个项目
github如何多人开发一个项目 一.总结 一句话总结:a.点项目里面的Settings->Collaborators,来添加参与者(比如github用户名), b.向他发送项目的link,让他 ...
- Spring Boot: Tuning your Undertow application for throughput--转
原文地址:https://jmnarloch.wordpress.com/2016/04/26/spring-boot-tuning-your-undertow-application-for-thr ...
- 集合HashSet的使用
集合中的HashSet底层是通过Hash表实现,HashSet的特点是元素唯一,但用到Hash表就跟hashCode()有了密不可分的联系,所以HashSet的唯一性是通过hashCode()方法来保 ...
- Spring MVC模式示例(采用解耦控制器)
Product package com.mstf.bean; import java.io.Serializable; /** * Product类,封装了一些信息,包含三个属性 * @author ...
- caffe(6) Blob,Layer,Net 以及对应配置文件的编写
深度网络(net)是一个组合模型,它由许多相互连接的层(layers)组合而成.Caffe就是组建深度网络的这样一种工具,它按照一定的策略,一层一层的搭建出自己的模型.它将所有的信息数据定义为blob ...
- jquery validate验证规则重用
当多个控件验证规则相同时,如何避免冗余代码并应用相同规则呢? [1st way. addMethod+addClassRules] 场景:维护学生档案时需要维护父母.监护人.紧急联系人的身份证号码,此 ...