A few years ago I wrote a small Python script to organize the photos uploaded from your phone to Dropbox. Lately, I have been rewriting some of my python scripts to golang for practice and also performance.
All photos are uploaded to Dropbox with a name pattern like 2018-08-01 05.56.40.jpg. What all it does is to parse the date and move it to the right place, for example, 2018-08-01 will move it to a folder called 08-August inside 2018.
You can also download the compiled file below, just make sure you make it executable with
chmod +x organize_photos
and run it with
Dropbox is a great software that I have been using for almost 10 years. It has helped me a lot during university, sharing project files, backing up my thesis and much more. It is a great service, but it also comes with a lot of problems regarding security and transparency (I will not get in-depth here). You can check for example, this article, or this one (there are many more if you look for it).
With this security issue in my mind, I decided to roll my own Dropbox-like service. The main difference is that I will know where all files are and that I am the only one with access to the unencrypted files. After building my own simple infrastructure, I decided to write a quick tutorial showing my solution and how you can create your own! Let’s get started…
The main software that we are going to use is called Resilio Sync (previously BitTorrent Sync). It takes care of all the syncronization between computer, mobile and server, just like Dropbox.
Dropbox has a great feature called Camera Upload, where you can automatically upload pictures from your phone, making life for lazy people like me easier. The problem is that I take so many pictures with my phone that the folder ends up with a huge amount of files, making the task of browsing and viewing them slow and annoying.
To fix this problem, I created a python script that will automatically organize pictures inside folders Year > Month.
How to use:
In order to use the script, put the file organize.py inside the ‘Camera Upload’ folder and run it from the terminal: