Skip to main content

Critiqypy is a File Categorizer Tool. It allows you to quickly view all files in a folder, and categorize them into categories you have defined. A straightforward example is looking through photos quickly, selecting some for printing, while discarding others.

Project description

Critiqypy

Critiqypy is a simple File Categorizer Tool. It allows you to quickly view all files in a folder, and categorize them into categories you have defined. A straightforward example is looking through photos quickly, selecting some for printing, while discarding others.

I created this simple application, because I need to sort a lot of images and videos manually; I have a large amount of microscopy data, and it is easy to see whether further analysis is worth it by eye. Therefore, simply looking at all images and/or movies and manually separating them one-by-one became annoying, and I wrote this super-simple script to just go through all files.

Usage

On the command line, simply run critiqypy <path to folder with files to categorize> <path where to put the result>. More advanced options are given in the help menu (also shown below). A typical, more complicated example is:

critiqypy -cp /path/to/images/ /path/to/output/folder -c Bad Meh Good "Absolutely fantastic"

which will show you the images in /path/to/images/ one by one, allowing you to sort them into one of the categories (Bad, Meh, Good, and Absolutely fantastic). When you sort an image into 'meh', a copy of the image is placed in /path/to/output/folder/meh.

usage: Critiqypy [-h] [-c CATEGORY [CATEGORY ...]] [-j | -cp | -mv] folder_path destination

positional arguments:
  folder_path           Path to the folder containing files to categorize
  destination           Path to the folder to store categorized pictures, or to the location to save the json with results

options:
  -h, --help            show this help message and exit
  -c CATEGORY [CATEGORY ...], --category CATEGORY [CATEGORY ...]
                        The categories to split the files into. Defaults to Yes & No, because that is probably what you want anyway. Can be any number you like.
  -j, --json            Write the categorization to the destination as a json file. Leave the original files alone.
  -cp, --copy           In the destination path, create subfolders with each category and place a //copy// of files in their respective categories
  -mv, --move           In the destination path, create subfolders with each category and //move// files to their respective categories

Limitations

Currently, this script can only handle video and image files. Extending things shouldn't be too difficult (?), but I personally don't need it. I checked that the script runs on a Linux machine, the code should work on Windows and Mac as well, but your mileage may vary.

Internally, I use VLC to display movies, so any video that VLC can show should work. Images are handled by Pillow.

Installation

Before installing this package, note that we use VLC media player to display videos. If VLC is not installed, this script will not work. If VLC installed, simply install this package using your favourite python package installer, probably:

pip install critiqypy

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

critiqypy-0.1.0.tar.gz (16.9 kB view hashes)

Uploaded Source

Built Distribution

critiqypy-0.1.0-py3-none-any.whl (18.1 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page