After learning Python yesterday, I thought that It would be best to solidify my learning by building something useful. One issue I had over the week involved compiling around 500+ videos for my kittens birthday celebration. After organising the first 10 videos by month, I was already fed up.
To my attention, I realised that I could actually make a script in python to go through these videos much faster. Using the GetFileInfo -d yourfile.mov, I realised that I could actually get the unique month and year that the file was created in.
Now, comes the part where I have to use Python
import os, shutil
from datetime import datetime
filepath = "/Users/alfietorres/Downloads/" #base file path
for filename in os.listdir(filepath): #iterate through each file in the directory
r = os.stat(filepath+filename) #look for the file path and the file name
d = r.st_birthtime #look for the time created
date=datetime.fromtimestamp(d) #assign the details to a date variable
month_directory = filepath+str(date.month)+"-"+str(date.year) #use the date variable to create a UNIQUE new directory
file_being_moved = filepath+filename #file the path of the file being moved
if os.path.isdir(month_directory) : #check if the directory is created
print("directory found ... ")
shutil.move(file_being_moved,month_directory) #move the file we are iterating on to the directory
else:
print("creating directory ... ")
os.mkdir(month_directory) #create new directory
shutil.move(file_being_moved,month_directory) #move items in new directory
Essentially, we have a for each loop going through each file in the downloads directory.
Afterwards, we find the month-year of that file and check if has already been created.
If the new directory has already been created, then all we have to do is move the file.
If it has not been created then we will create a new directory and move the file into that directory.
After running the file, we get the following output (voila). Now you have an organised list of new directories. You can even add new videos in the Downloads directory and run the script again to reorganise the files.
Top comments (0)