debian | ||
photo_importer | ||
web | ||
.gitignore | ||
LICENSE | ||
photo-importer | ||
photo-importer-server | ||
photo-importer-server.bat | ||
photo-importer-win.cfg | ||
photo-importer.cfg | ||
photo-importer.service | ||
README.md | ||
setup.py |
Photo Importer
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+
- Debian based Linux (Other Linux versions not officially supported, but might work) or Windows 7 and above
Dependencies:
- PyExifTool
- progressbar
- psutil
- exiftran or jpegtran
- pmount (only for server)
- pypiwin32 (only for windows)
Installation Options:
Installing via PyPi
sudo apt install exiftran pmount pip
sudo pip install photo-importer
Installing as debian package
debuild -b
sudo dpkg -i ../photo-importer_1.2.0_all.deb
Installing via setup.py
sudo apt install exiftran 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.
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
Web Interface
- attach usb-drive / usert memory card
- open http://servername:8080
- click "Mount"
- click "Import"
- click "Unmount"
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!