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 details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

Details for the file critiqypy-0.1.0.tar.gz.

File metadata

  • Download URL: critiqypy-0.1.0.tar.gz
  • Upload date:
  • Size: 16.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.1 CPython/3.10.6 Linux/6.6.6-76060606-generic

File hashes

Hashes for critiqypy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 1816899f1760180c9c2aecfd66610ecac907d34ea9fa30f713447d2755361b6c
MD5 ef1d2c3c86b5f912b0f8a1d2a7f7f257
BLAKE2b-256 aee8af680c6d680b69d5a2ca4321c2607fd4e7b7bfe789558e9ff407b5fd0372

See more details on using hashes here.

File details

Details for the file critiqypy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: critiqypy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 18.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.4.1 CPython/3.10.6 Linux/6.6.6-76060606-generic

File hashes

Hashes for critiqypy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e3df08cb0a800fc81b9dd4c8107cad41c51b02d0c5959b2f7dc0a300ca7cc916
MD5 d1d0ca9b5be61d1546321cea20c38aa4
BLAKE2b-256 7e0eaed0bc918acdef23c78461c97da2aa49ac7d01406e654b812de292909fb9

See more details on using hashes here.

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