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.

License

Copyright © 2019-2020 Felix Soubelet. MIT License

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.tar.gz (11.4 kB view details)

Uploaded Source

Built Distribution

photocrawl-0.3-py3-none-any.whl (11.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: photocrawl-0.3.tar.gz
  • Upload date:
  • Size: 11.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.8.3 Darwin/19.6.0

File hashes

Hashes for photocrawl-0.3.tar.gz
Algorithm Hash digest
SHA256 0e2a55910bf22ad7e1898e2d1fb1f095065bf967fe9127c6e949b38eb19dc436
MD5 d702933c8db174b2e406e107829cba1f
BLAKE2b-256 6994ca32330a30cd9d296a69ae45fc6cec2eae611bb2deacf7a199ca1cd20b4c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: photocrawl-0.3-py3-none-any.whl
  • Upload date:
  • Size: 11.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.8.3 Darwin/19.6.0

File hashes

Hashes for photocrawl-0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1d6d4ac5bfbda044e71a698b74475ec11884819dee07eff19d0bfd93978d0757
MD5 b71ed4801b595882ac7bd3a3f31d375d
BLAKE2b-256 ebe5288caed16d441e8331ae4c97a563b106b36f6e1bc80c142a45495731313b

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