python根据txt文本批量创建文件夹
前言
前言:想写这个代码的原因是因为实习的时候需要根据表格名创建对应的文件夹,如果只是很少个数文件夹的话,ctrl+shift+n还可以接受吧,可是一次就要创建几百个文件夹,这就有点方方了。所以我写了一些代码解决实际的问题吧。
正文
正文:其实这是一个简单的代码集合,然后就实现了
代码目录结构
│ 创建文件夹.py
├─docs
│ try.txt
└─folder
第一个文件自然就是代码的位置;try.txt是存的所有要生成的文件夹名称列表,是直接从excel表格获取复制粘贴的,编码格式utf-8;folder文件夹存放的是新生成的目标文件夹,我觉得这样方便点,所以就这么来了。因为只是自己用,所以没有弄交互什么的,直接简单粗暴出来结果。代码和我当时的思路都在下面了,欢迎交流批评指正。
#目标是读取txt的每一行数据创建对应名字的文件夹
#1通过函数调用解决创建固定的文件夹
#2创建一个txt文件输出里面的内容输出
#3将txt输出内容和创建文件夹链接完成任务
#4后续补充检测文本文件是否存在,不在报错
#5后续补充如果已经有了文本中的文件夹跳过这个文件名创建下一个
#结束
#反思:目前创建的文件夹目录固定、文本文档位置固定
#完善功能:
#1.先把文件夹目录改为交互式用户设置
#2.检测txt文件是否存在
#!/usr/bin/python
#-*-coding:utf-8-*-
import os
def mkdir(path):
folder=os.path.exists(path)
if not folder:
os.makedirs(path)
print(path+"---OK---")
else:
print(path+"---There is this folder!---")
if __name__=='__main__':
file = "G:\\python\\NewFile\\folder\\"
with open('docs/try.txt','r') as f:
lines=f.readlines()
for line in lines:
folder=file+line
#strip()方法移除字符串头尾指定的字符
folder=folder.strip()
#print (folder)
mkdir(folder)
运行结果就是批量创建了文件夹呗。
上个图演示下:
python爬虫自动创建文件夹的功能
该爬虫应用了创建文件夹的功能:
#file setting
folder_path = "D:/spider_things/2016.4.6/" + file_name +"/"
if not os.path.exists(folder_path):
os.makedirs(folder_path)
上面代码块的意思是:
"os.path.exists(folder_path)"用来判断folder_path这个路径是否存在,如果不存在,就执行“os.makedirs(folder_path)”来创建这个路径
补充:下面看下Python 爬虫 —— 文件及文件夹操作
0. 文件名、路径信息、拓展名等
#取文件后缀
>>> os.path.splitext("/root/a.py")
('/root/a', '.py')
#取目录与文件名
>>> os.path.split("/root/a.py")
('/root', 'a.py')
>>> os.path.basename("/root/a.py")
'a.py'
>>> os.path.dirname('/root/a.py')
'/root'
1. 遍历文件夹及重命名
import os
import sys
path = 'D:/emojis'
# os.walk 返回的是一个三元组
for (path, dirs, files) in os.walk(path):
for filename in files:
newname = "emoji_" +filename
os.rename(os.path.join(path, filename) , os.path.join(path, new_name))
总结
以上所述是小编给大家介绍的python爬虫自动创建文件夹的功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。