Skip to main content

Photo importer tool

Project description

Photo Importer

CodeQL PyPI - Version PyPI - Downloads Code style: black

Command line tools for photo importing/renaming/rotating

Features:

  • Media files scan
  • Time when picture was taken detection (by EXIF, by file name, by file attributes)
  • Media files moving/copying to configurable hierarchy
  • Lossless rotations (via exiftran or jpegtran)

Photo Importer Server

Standalone web server for fast media import for headless computer

Features:

  • Mounted storages detection (by path mask)
  • Storages mount/unmount (via pmount)
  • The same as photo-importer but without console

Installation

Requirements:

  • Python 3.3+

Supported OS:

  • Debian based Linux (other Linux versions not officially supported, but might work)
  • Windows 7 and above
  • MacOS X and above (with brew installed, only console version)

Dependencies:

Installation Options:

Installing via PyPi

sudo apt install exiftran exiftool pmount pip
sudo pip install photo-importer

Installing as debian package

debuild -b
sudo apt install pip python3-exif python3-progressbar exiftran python3-psutil
sudo pip install PyExifTool
sudo dpkg -i ../photo-importer_1.2.5_all.deb

Installing via setup.py

sudo apt install exiftran exiftool pmount pip
sudo pip install PyExifTool progressbar psutil
sudo python3 ./setup.py install

Installing for Windows

Download and install python3 for you Windows distributive https://www.python.org/downloads/windows/

Download and install exiftool https://exiftool.org/

Download and extract jpegtran to photo_importer folder http://sylvana.net/jpegcrop/jpegtran/

Install with python dependencies

python -m pip install pypiwin32 photo-importer

Usage

Command-Line Interface

photo-importer /path/to/media/files

Will process files (reanaming/rotating) in-place. In place example

photo-importer /path/to/media/files /output/path

Will import (by default move, but it can be changed in config) files from /path/to/media/files to /output/path with date hierarchy creation and reanaming/rotating

Move example

Web Interface

  • attach usb-drive / usert memory card
  • open http://servername:8080
  • click "Mount"
  • click "Import"
  • click "Unmount"

Web interface example

Windows command line

cd photo_importer
run.py -c ..\photo-importer-win.cfg path\to\media\files \output\path

Windows web

photo-importer-server.bat

Configuration

The server config file located in /etc/photo-importer.cfg

Command line tool config file located in ~/.photo-importer.cfg

Also config file can be specified by mean of -c command line option.

For options details see comments in the config file.

Acknowledgements

Thanks to everyone who tested and gave advice.

Bug reports, suggestions and pull request are welcome!

Show your support

Give a ⭐️ if this project helped you!

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

photo-importer-1.2.6.tar.gz (32.9 kB view hashes)

Uploaded Source

Built Distribution

photo_importer-1.2.6-py3-none-any.whl (35.7 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