{ "info": { "author": "Scott Johnston", "author_email": "sjohnston@alum.mit.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Filmtagger\n> A simple CLI to tag film scans with EXIF metadata.\n\nA fuss-free way to take JPG files from film scanning and tag them with\ndate, camera, and film information for import into Lightroom (or equivalent).\n\n## Installation\n\nInstall the package:\n\n```\npip install filmtagger\n```\n\n## Usage examples\n\nTo set the date of all images to 12 June 2019, specifying camera and \nfilm as well:\n\n $ filmtagger -d 2019-06-12 -c \"Leica M6\" -f \"E100G\" *.jpg\n\nFilmtagger supports fuzzy-matching against its database of cameras and \nfilms, so your input strings needn't be exact. Likewise, it attempts to \nautodetect a variety of date/time input.\n\n## Configuration\n\nYou may configure your own camera and film definitions to override the\nsystem-wide ones.\n\nCreate a `~/.config/filmtagger/cameras.toml` file that looks like this:\n\n```toml\n[\"Mamiya RB67\"]\n\"Exif.Image.Make\" = \"Mamiya\"\n\"Exif.Image.Model\" = \"RB67\"\n```\n\nAnd a `~/.config/filmtagger/films.toml` like this:\n\n```toml\n[\"Ilford HP5 Plus\"]\n\"Exif.Photo.ISOSpeedRatings\" = 400\n\"Xmp.AnalogExif.FilmMaker\" = \"Ilford\"\n\"Xmp.iptcExt.DigitalSourceType\" = \"http://cv.iptc.org/newscodes/digitalsourcetype/negativeFilm\"\n```\n\nThe section headings will be fuzzy-matched from the command-line \narguments. The key-value pairs that follow will be set as metadata, \nassuming they are [valid tag names](https://exiv2.org/metadata.html).\nIn addition to the standard Exiv2 tag schema, [AnalogExif \ntags](http://analogexif.sourceforge.net/help/analogexif-xmp.php) are \nalso supported.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/2n3906/filmtagger", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "filmtagger", "package_url": "https://pypi.org/project/filmtagger/", "platform": "any", "project_url": "https://pypi.org/project/filmtagger/", "project_urls": { "Homepage": "https://github.com/2n3906/filmtagger" }, "release_url": "https://pypi.org/project/filmtagger/0.0.4/", "requires_dist": [ "click", "toml", "fuzzywuzzy", "python-Levenshtein", "python-dateutil", "PyGObject" ], "requires_python": "", "summary": "A simple CLI to tag film scans with EXIF metadata.", "version": "0.0.4" }, "last_serial": 5469220, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "41e57541ad8639e74894e5e552fb4b36", "sha256": "3c10a359be670d3b7b2bb7d4665cd873117b86d2aaf36749ca69d72f4b8af683" }, "downloads": -1, "filename": "filmtagger-0.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "41e57541ad8639e74894e5e552fb4b36", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 5712, "upload_time": "2019-06-28T15:14:05", "url": "https://files.pythonhosted.org/packages/2d/a2/0bf070888768a22aea4aa8262153f37f14ddbd4c5234eea09a4402603ecd/filmtagger-0.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a8ba295cc08b8529077b2c4b8095547f", "sha256": "ce1b1a14064fbe1c97624070f8cf13696dd92da40ca8183977ac9ebc53e70459" }, "downloads": -1, "filename": "filmtagger-0.0.1-py3.7.egg", "has_sig": false, "md5_digest": "a8ba295cc08b8529077b2c4b8095547f", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 7170, "upload_time": "2019-06-28T15:14:07", "url": "https://files.pythonhosted.org/packages/a2/fd/f45e45ef9884621017ada3dfc404fd36e3c5f2ed9a4926fe87327e064c6a/filmtagger-0.0.1-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "a6b5458c5c6983434955ab5dc1485097", "sha256": "84bb6d5bedc7b3c5d447f69e3802cf932116a342e224b024a1325b25aa22ed3e" }, "downloads": -1, "filename": "filmtagger-0.0.1.tar.gz", "has_sig": false, "md5_digest": "a6b5458c5c6983434955ab5dc1485097", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3759, "upload_time": "2019-06-28T15:14:09", "url": "https://files.pythonhosted.org/packages/46/82/7603a3bd9c1aa68155dfa8f4ab1fce504cd3b25eae0232c7bd72099a12a2/filmtagger-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "be3121803b6c415458e2f4f433659d39", "sha256": "de1c0f923152c4fe5d2861b5cdbbcd01678815c713e805d382d0b4f78b160c35" }, "downloads": -1, "filename": "filmtagger-0.0.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "be3121803b6c415458e2f4f433659d39", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6485, "upload_time": "2019-06-29T01:47:37", "url": "https://files.pythonhosted.org/packages/30/e0/253b75308a45f301646496266d629beaf520abac16a1b928e81697893366/filmtagger-0.0.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3033d884041b558b2cb814538892f78", "sha256": "f9af93dfb7a1bd79be3c6354945923e493dd27b37a40310ec6d7d2c28e126236" }, "downloads": -1, "filename": "filmtagger-0.0.2.tar.gz", "has_sig": false, "md5_digest": "d3033d884041b558b2cb814538892f78", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3938, "upload_time": "2019-06-29T01:47:39", "url": "https://files.pythonhosted.org/packages/45/a0/822dccc3f63e97375d39c3852d4e6fe853da08efb1bdaf7c028ccd309b7f/filmtagger-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "6deadb99ae1eb69c6b281f08efb64704", "sha256": "15f87421bfc55f03f8229e20c6dda17ddf74a9a0ea43abc822195ff61fe5c8b1" }, "downloads": -1, "filename": "filmtagger-0.0.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "6deadb99ae1eb69c6b281f08efb64704", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6492, "upload_time": "2019-06-29T01:54:20", "url": "https://files.pythonhosted.org/packages/6e/8c/ba37187ed3a49526c3484cdbe792f6326397396cc677db34712ec53937a5/filmtagger-0.0.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "75041b5ede3b00c384ea891f63b7f04e", "sha256": "35638f4776a74f0d2d8e32e8bf1a8fc0b0e3dae65acc0ae96773d868d978d198" }, "downloads": -1, "filename": "filmtagger-0.0.3-py3.7.egg", "has_sig": false, "md5_digest": "75041b5ede3b00c384ea891f63b7f04e", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 8109, "upload_time": "2019-06-29T01:54:22", "url": "https://files.pythonhosted.org/packages/39/30/50f1ec7dae7faf2d45fc416eadcde1fd5776cd805fdf7f341a52c02c2880/filmtagger-0.0.3-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "cae9f7d41c8d442ffd3bba46a2734fbb", "sha256": "ddaa7bc187ea1632d71ab8ee5b1187b95a9583ae6230d6a90233d1f333d84c25" }, "downloads": -1, "filename": "filmtagger-0.0.3.tar.gz", "has_sig": false, "md5_digest": "cae9f7d41c8d442ffd3bba46a2734fbb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3942, "upload_time": "2019-06-29T01:54:23", "url": "https://files.pythonhosted.org/packages/c7/79/44f1bd648e7383bac7505b95fbd192380c5a229614c06be6ff3167a9b44e/filmtagger-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "19542c28c10659ddc29e6bacca8851c9", "sha256": "947d22480c920574576dd03505a2a8fa134d350609f78d2adc9b79bd084e3db3" }, "downloads": -1, "filename": "filmtagger-0.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "19542c28c10659ddc29e6bacca8851c9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6618, "upload_time": "2019-07-01T01:36:14", "url": "https://files.pythonhosted.org/packages/da/11/4ae2066e1983ca5dfbe1db06297c195225593a2a56eb31ea3e9bda00dce4/filmtagger-0.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b58a79a188ff03a6a75d4fb566b67198", "sha256": "a786e54272fa12d46098e7e14c3af5a04111284e88456d05f9c56124fbe4e946" }, "downloads": -1, "filename": "filmtagger-0.0.4-py3.7.egg", "has_sig": false, "md5_digest": "b58a79a188ff03a6a75d4fb566b67198", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 8344, "upload_time": "2019-07-01T01:36:16", "url": "https://files.pythonhosted.org/packages/cc/0a/54b011ddaae8c22fdbd1e913bbd3c70c454fab1900c96d70049ef38021a3/filmtagger-0.0.4-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "70d5c92727288c9005cca54918a5947c", "sha256": "475271b4a4740833c8c54908f9e6e12cbe47fe9f00d9c6ea11b602a0322f3bf3" }, "downloads": -1, "filename": "filmtagger-0.0.4.tar.gz", "has_sig": false, "md5_digest": "70d5c92727288c9005cca54918a5947c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4060, "upload_time": "2019-07-01T01:36:17", "url": "https://files.pythonhosted.org/packages/bf/5e/5abed7f605dbe6aa698960d4c69cd8de9a65199835bb8671bec437ea1ec5/filmtagger-0.0.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "19542c28c10659ddc29e6bacca8851c9", "sha256": "947d22480c920574576dd03505a2a8fa134d350609f78d2adc9b79bd084e3db3" }, "downloads": -1, "filename": "filmtagger-0.0.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "19542c28c10659ddc29e6bacca8851c9", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 6618, "upload_time": "2019-07-01T01:36:14", "url": "https://files.pythonhosted.org/packages/da/11/4ae2066e1983ca5dfbe1db06297c195225593a2a56eb31ea3e9bda00dce4/filmtagger-0.0.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b58a79a188ff03a6a75d4fb566b67198", "sha256": "a786e54272fa12d46098e7e14c3af5a04111284e88456d05f9c56124fbe4e946" }, "downloads": -1, "filename": "filmtagger-0.0.4-py3.7.egg", "has_sig": false, "md5_digest": "b58a79a188ff03a6a75d4fb566b67198", "packagetype": "bdist_egg", "python_version": "3.7", "requires_python": null, "size": 8344, "upload_time": "2019-07-01T01:36:16", "url": "https://files.pythonhosted.org/packages/cc/0a/54b011ddaae8c22fdbd1e913bbd3c70c454fab1900c96d70049ef38021a3/filmtagger-0.0.4-py3.7.egg" }, { "comment_text": "", "digests": { "md5": "70d5c92727288c9005cca54918a5947c", "sha256": "475271b4a4740833c8c54908f9e6e12cbe47fe9f00d9c6ea11b602a0322f3bf3" }, "downloads": -1, "filename": "filmtagger-0.0.4.tar.gz", "has_sig": false, "md5_digest": "70d5c92727288c9005cca54918a5947c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4060, "upload_time": "2019-07-01T01:36:17", "url": "https://files.pythonhosted.org/packages/bf/5e/5abed7f605dbe6aa698960d4c69cd8de9a65199835bb8671bec437ea1ec5/filmtagger-0.0.4.tar.gz" } ] }