Skip to main content

Analysis script of photography habits.

Project description

PhotoCrawl: A Photography Analyzer

A simple script to run analysis and get insight on my use of equipment and settings in my practice of photography.

Install

Prerequisites

This script runs on Python3.6.1+, and requires the following libraries: PyExifInfo, matplotlib, seaborn, pandas, pendulum, typer and loguru. Most importantly, it also requires that you have the amazing ExifTool package by Phil Harvey.

Install

This code is compatible with Python 3.6+. If for some reason you have a need for it, you can simply install it in your virtual enrivonment with:

pip install photocrawl

Usage

With this package installed in the activated enrivonment, it can be called through python -m photocrawl or through a newly created photocrawl command.

Detailed usage goes as follows:

Usage: photocrawl [OPTIONS] [IMAGES]

  Crawl and ensemble of pictures to run analysis of their metadata and get
  insight on one's use of equipment and settings in their practice of
  photography.

Arguments:
  [IMAGES]  Location, relative or absolute, of the images directory you wish
            to crawl.


Options:
  --output-dir TEXT               Location, either relative or absolute, of
                                  the output directory.  [default: outputs]

  --show-figures / --no-show-figures
                                  Whether or not to show figures when plotting
                                  insights.  [default: False]

  --save-figures / --no-save-figures
                                  Whether or not to save figures when plotting
                                  insights.  [default: False]

  --log-level TEXT                The base console logging level. Can be
                                  'debug', 'info', 'warning' and 'error'.
                                  [default: info]

  --install-completion            Install completion for the current shell.
  --show-completion               Show completion for the current shell, to
                                  copy it or customize the installation.

  --help                          Show this message and exit.

The script will crawl files, extract exif and output visualizations named insight_1.png and insight_2.png in a newly created outputs folder (or a folder named as you specified).

Output example

Here is an example of what the script outputs:

Example_1

Example_2

TODO

  • Handling raw files.
  • Handling subfolders when looking for files.
  • Output all insight in a single/two plot.
  • Implement proper logging.
  • Make into a package.
  • Make callable as a python module (python -m photocrawl ...).
  • Improving the command line experience.

Made with ♥︎ by fsoubelet
MIT © 2019 Felix Soubelet

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

photocrawl-0.3.1.tar.gz (11.6 kB view details)

Uploaded Source

Built Distribution

photocrawl-0.3.1-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file photocrawl-0.3.1.tar.gz.

File metadata

  • Download URL: photocrawl-0.3.1.tar.gz
  • Upload date:
  • Size: 11.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.7 CPython/3.8.5 Darwin/20.6.0

File hashes

Hashes for photocrawl-0.3.1.tar.gz
Algorithm Hash digest
SHA256 c3ff4b11b498752f20af1d7f65f08c19361734ecff8e73f1d810eebe58f2b6b8
MD5 5d84ad260d749ec7cb874ac10eb2ee29
BLAKE2b-256 2e7cf57cd34bc45fdc5dc3e9950783a75888611460c577829fc7d29943eb1a29

See more details on using hashes here.

File details

Details for the file photocrawl-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: photocrawl-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 11.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.7 CPython/3.8.5 Darwin/20.6.0

File hashes

Hashes for photocrawl-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 08974937a865f12ed173f4ac145083c6ba153520cba5c877d00014b372fec16b
MD5 26ac38ddc5a14274be7eccdda6dc5ee7
BLAKE2b-256 2bf691739d276446c6a05884838a6d029c836d11cb5c025dc9da79805b2d282f

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